0.03/0.12 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.14/0.13 % Command : do_cvc5 %s %d 0.14/0.34 % Computer : n009.cluster.edu 0.14/0.34 % Model : x86_64 x86_64 0.14/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.14/0.34 % Memory : 8042.1875MB 0.14/0.34 % OS : Linux 3.10.0-693.el7.x86_64 0.14/0.34 % CPULimit : 1200 0.14/0.34 % WCLimit : 120 0.14/0.34 % DateTime : Tue Jul 13 15:48:43 EDT 2021 0.14/0.35 % CPUTime : 5.22/5.47 %----THF division 5.22/5.47 ------- cvc5-thf casc 28 : /export/starexec/sandbox/benchmark/theBenchmark.p at 120... 5.22/5.47 --- Run --ho-elim --full-saturate-quant at 10... 10.35/10.51 % SZS status Theorem for theBenchmark 14.58/14.75 % SZS output start Proof for theBenchmark 14.58/14.75 (proof 14.58/14.75 (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 _let_2))) (let ((_let_6 (tyop_2Emin_2Efun _let_5))) (let ((_let_7 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_8 (tyop_2Emin_2Efun _let_7))) (let ((_let_9 (s (_let_8 ((tyop_2Emin_2Efun (_let_6 _let_5)) _let_5))))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Emin_2Eind))) (let ((_let_11 (s ((tyop_2Emin_2Efun (_let_10 tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)))) (let ((_let_12 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_13 (tyop_2Emin_2Efun _let_12))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 (s (_let_15 _let_16)))) (let ((_let_18 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_19 (mono_2Ec_2Earithmetic_2ENUMERAL _let_18))) (let ((_let_20 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_21 (_let_20 tyop_2Emin_2Ebool))) (let ((_let_22 (s _let_21))) (let ((_let_23 (_let_20 _let_21))) (let ((_let_24 (s (_let_20 _let_23)))) (let ((_let_25 (not mono_2Ec_2Ebool_2EF))) (let ((_let_26 (not mono_2Ec_2Ebool_2ET))) (let ((_let_27 (tyop_2Emin_2Efun _let_2))) (let ((_let_28 (_let_27 tyop_2Enum_2Enum))) (let ((_let_29 (_let_15 tyop_2Enum_2Enum))) (let ((_let_30 (_let_15 _let_29))) (let ((_let_31 (tyop_2Emin_2Efun _let_30))) (let ((_let_32 (s (_let_31 _let_28)))) (let ((_let_33 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_34 (mono_2Ec_2Earithmetic_2EBIT1 _let_33))) (let ((_let_35 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_34)))) (let ((_let_36 (_let_15 tyop_2Emin_2Ebool))) (let ((_let_37 (tyop_2Emin_2Efun _let_36))) (let ((_let_38 (_let_37 _let_36))) (let ((_let_39 (s _let_38))) (let ((_let_40 (tyop_2Emin_2Efun _let_23))) (let ((_let_41 (s (_let_40 _let_21)))) (let ((_let_42 (s (_let_40 tyop_2Emin_2Ebool)))) (let ((_let_43 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_44 (_let_27 _let_43))) (let ((_let_45 (s ((tyop_2Emin_2Efun _let_44) _let_44)))) (let ((_let_46 (tyop_2Emin_2Efun _let_29))) (let ((_let_47 (_let_46 tyop_2Emin_2Ebool))) (let ((_let_48 (s (_let_15 _let_47)))) (let ((_let_49 (= (mono_2Ec_2Estring_2EIMPLODE mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (let ((_let_50 (s ((tyop_2Emin_2Efun (_let_10 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_15 tyop_2Emin_2Eind)) tyop_2Emin_2Ebool))))) (let ((_let_51 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_52 (_let_1 _let_51))) (let ((_let_53 (tyop_2Emin_2Efun _let_51))) (let ((_let_54 (s (_let_15 (_let_53 _let_52))))) (let ((_let_55 (_let_37 tyop_2Emin_2Ebool))) (let ((_let_56 (s _let_55))) (let ((_let_57 (_let_53 _let_51))) (let ((_let_58 (s (_let_20 _let_57)))) (let ((_let_59 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_60 (_let_59 tyop_2Emin_2Ebool))) (let ((_let_61 (tyop_2Emin_2Efun _let_60))) (let ((_let_62 (s (_let_61 tyop_2Eone_2Eone)))) (let ((_let_63 (_let_61 tyop_2Emin_2Ebool))) (let ((_let_64 (tyop_2Emin_2Efun _let_21))) (let ((_let_65 (s (_let_64 _let_63)))) (let ((_let_66 (_let_4 tyop_2Enum_2Enum))) (let ((_let_67 (s ((tyop_2Emin_2Efun _let_28) (_let_6 _let_66))))) (let ((_let_68 (_let_64 tyop_2Emin_2Ebool))) (let ((_let_69 (s _let_68))) (let ((_let_70 (s (_let_61 _let_68)))) (let ((_let_71 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_12))) (let ((_let_72 (tyop_2Eoption_2Eoption _let_71))) (let ((_let_73 (tyop_2Emin_2Efun _let_72))) (let ((_let_74 ((tyop_2Epair_2Eprod _let_72) _let_72))) (let ((_let_75 (s ((tyop_2Emin_2Efun _let_74) ((tyop_2Emin_2Efun (_let_73 (_let_73 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_76 (_let_15 _let_36))) (let ((_let_77 (s (_let_37 _let_76)))) (let ((_let_78 (_let_1 _let_36))) (let ((_let_79 (s (_let_15 (_let_37 _let_78))))) (let ((_let_80 (_let_37 tyop_2Enum_2Enum))) (let ((_let_81 (s _let_80))) (let ((_let_82 (tyop_2Eoption_2Eoption _let_52))) (let ((_let_83 (tyop_2Emin_2Efun _let_52))) (let ((_let_84 (_let_83 _let_82))) (let ((_let_85 (s _let_84))) (let ((_let_86 (_let_53 tyop_2Emin_2Ebool))) (let ((_let_87 (s (_let_53 _let_86)))) (let ((_let_88 (_let_59 _let_51))) (let ((_let_89 (tyop_2Emin_2Efun _let_88))) (let ((_let_90 (s (_let_61 (_let_89 tyop_2Emin_2Ebool))))) (let ((_let_91 (tyop_2Emin_2Efun _let_43))) (let ((_let_92 (s (_let_91 _let_36)))) (let ((_let_93 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_94 (tyop_2Emin_2Efun _let_93))) (let ((_let_95 (s (_let_20 (_let_94 (_let_94 _let_93)))))) (let ((_let_96 (tyop_2Epair_2Eprod _let_12))) (let ((_let_97 (_let_96 _let_12))) (let ((_let_98 (_let_13 _let_97))) (let ((_let_99 (s (_let_13 _let_98)))) (let ((_let_100 (s (_let_59 _let_93)))) (let ((_let_101 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_51))) (let ((_let_102 (tyop_2Eoption_2Eoption _let_101))) (let ((_let_103 (_let_53 _let_102))) (let ((_let_104 (tyop_2Emin_2Efun _let_102))) (let ((_let_105 (s (_let_53 (_let_104 ((tyop_2Emin_2Efun (_let_20 _let_103)) _let_102)))))) (let ((_let_106 (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))) (let ((_let_107 (s (_let_20 _let_106)))) (let ((_let_108 (_let_13 tyop_2Emin_2Ebool))) (let ((_let_109 (_let_13 _let_108))) (let ((_let_110 (tyop_2Emin_2Efun _let_109))) (let ((_let_111 (_let_110 tyop_2Emin_2Ebool))) (let ((_let_112 (s ((tyop_2Emin_2Efun _let_111) _let_109)))) (let ((_let_113 (s (_let_20 (_let_104 (_let_104 _let_102)))))) (let ((_let_114 (s _let_93))) (let ((_let_115 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_116 (_let_115 tyop_2Emin_2Ebool))) (let ((_let_117 (_let_115 _let_116))) (let ((_let_118 (tyop_2Emin_2Efun _let_117))) (let ((_let_119 (_let_118 tyop_2Emin_2Ebool))) (let ((_let_120 (s ((tyop_2Emin_2Efun _let_119) _let_117)))) (let ((_let_121 (_let_91 _let_43))) (let ((_let_122 (s (_let_15 _let_121)))) (let ((_let_123 (_let_20 _let_30))) (let ((_let_124 (s _let_123))) (let ((_let_125 (s _let_36))) (let ((_let_126 (_let_53 _let_82))) (let ((_let_127 (tyop_2Emin_2Efun _let_82))) (let ((_let_128 (s (_let_53 (_let_127 ((tyop_2Emin_2Efun (_let_20 _let_126)) _let_82)))))) (let ((_let_129 (tyop_2Emin_2Efun _let_76))) (let ((_let_130 (_let_129 tyop_2Emin_2Ebool))) (let ((_let_131 (s _let_130))) (let ((_let_132 (not (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))) (= _let_1 _let_1)))))) (let ((_let_133 (= (mono_2Ec_2Eprim__rec_2EPRE mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (let ((_let_134 (s (_let_129 _let_76)))) (let ((_let_135 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_51))) (let ((_let_136 (tyop_2Eoption_2Eoption _let_135))) (let ((_let_137 (_let_53 _let_136))) (let ((_let_138 (tyop_2Emin_2Efun _let_137))) (let ((_let_139 (s (_let_138 _let_88)))) (let ((_let_140 (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0))) (let ((_let_141 (tyop_2Emin_2Efun (_let_15 _let_12)))) (let ((_let_142 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_143 (tyop_2Emin_2Efun _let_142))) (let ((_let_144 (s (_let_143 (_let_13 (_let_141 _let_12)))))) (let ((_let_145 (s (_let_13 (_let_27 (_let_96 _let_2)))))) (let ((_let_146 (s _let_109))) (let ((_let_147 (_let_27 _let_2))) (let ((_let_148 (s ((tyop_2Emin_2Efun (_let_15 _let_147)) _let_5)))) (let ((_let_149 (s _let_47))) (let ((_let_150 (_let_91 _let_121))) (let ((_let_151 (s (_let_20 _let_150)))) (let ((_let_152 (mono_2Ec_2Earithmetic_2ENUMERAL _let_33))) (let ((_let_153 (= (mono_2Ec_2Earithmetic_2EFACT mono_2Ec_2Enum_2E0) _let_152))) (let ((_let_154 (_let_46 _let_29))) (let ((_let_155 (s (_let_46 _let_154)))) (let ((_let_156 (s (_let_20 (_let_64 _let_21))))) (let ((_let_157 (s (_let_15 _let_154)))) (let ((_let_158 (tyop_2Emin_2Efun _let_66))) (let ((_let_159 (s (_let_8 ((tyop_2Emin_2Efun (_let_158 _let_66)) _let_66))))) (let ((_let_160 (_let_15 _let_2))) (let ((_let_161 (_let_15 _let_160))) (let ((_let_162 (s _let_161))) (let ((_let_163 (s _let_154))) (let ((_let_164 (s (_let_20 (_let_27 _let_147))))) (let ((_let_165 (s (_let_158 _let_7)))) (let ((_let_166 (s _let_28))) (let ((_let_167 (mono_2Ec_2Earithmetic_2EEVEN mono_2Ec_2Enum_2E0))) (let ((_let_168 (s ((tyop_2Emin_2Efun (_let_15 _let_28)) _let_66)))) (let ((_let_169 (s ((tyop_2Emin_2Efun _let_160) _let_160)))) (let ((_let_170 (= (mono_2Ec_2Estring_2EEXPLODE mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (let ((_let_171 (_let_13 tyop_2Estring_2Echar))) (let ((_let_172 (s (_let_110 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_171) _let_171)) _let_171))))) (let ((_let_173 (s (_let_15 (_let_27 _let_3))))) (let ((_let_174 (s ((tyop_2Emin_2Efun _let_161) _let_147)))) (let ((_let_175 (mono_2Ec_2Earithmetic_2EBIT1 _let_18))) (let ((_let_176 (mono_2Ec_2Earithmetic_2EBIT1 _let_175))) (let ((_let_177 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_176)))) (let ((_let_178 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_177)))) (let ((_let_179 (mono_2Ec_2Earithmetic_2EBIT2 _let_176))) (let ((_let_180 (mono_2Ec_2Earithmetic_2EBIT2 _let_179))) (let ((_let_181 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_180)))) (let ((_let_182 (mono_2Ec_2Earithmetic_2EBIT2 _let_175))) (let ((_let_183 (mono_2Ec_2Earithmetic_2EBIT2 _let_182))) (let ((_let_184 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_183))))) (let ((_let_185 (mono_2Ec_2Earithmetic_2ENUMERAL _let_175))) (let ((_let_186 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_183))))) (let ((_let_187 (mono_2Ec_2Earithmetic_2EBIT2 _let_18))) (let ((_let_188 (mono_2Ec_2Earithmetic_2ENUMERAL _let_187))) (let ((_let_189 (mono_2Ec_2Earithmetic_2EBIT1 _let_187))) (let ((_let_190 (mono_2Ec_2Earithmetic_2EBIT1 _let_189))) (let ((_let_191 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_190))))) (let ((_let_192 (mono_2Ec_2Earithmetic_2EBIT1 _let_34))) (let ((_let_193 (mono_2Ec_2Earithmetic_2EBIT1 _let_192))) (let ((_let_194 (mono_2Ec_2Earithmetic_2EBIT2 _let_193))) (let ((_let_195 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_194))))) (let ((_let_196 (mono_2Ec_2Earithmetic_2EBIT2 _let_33))) (let ((_let_197 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_196)))) (let ((_let_198 (mono_2Ec_2Earithmetic_2EBIT2 _let_192))) (let ((_let_199 (mono_2Ec_2Earithmetic_2EBIT1 _let_198))) (let ((_let_200 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_199))))) (let ((_let_201 (mono_2Ec_2Earithmetic_2ENUMERAL _let_182))) (let ((_let_202 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_199))))) (let ((_let_203 (mono_2Ec_2Earithmetic_2ENUMERAL _let_189))) (let ((_let_204 (mono_2Ec_2Earithmetic_2EBIT2 _let_198))) (let ((_let_205 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_204))))) (let ((_let_206 (mono_2Ec_2Earithmetic_2ENUMERAL _let_193))) (let ((_let_207 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_204))))) (let ((_let_208 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_187)))) (let ((_let_209 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_194))))) (let ((_let_210 (mono_2Ec_2Earithmetic_2ENUMERAL _let_176))) (let ((_let_211 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_189)))))) (let ((_let_212 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_196)))) (let ((_let_213 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_190))))) (let ((_let_214 (mono_2Ec_2Earithmetic_2ENUMERAL _let_192))) (let ((_let_215 (mono_2Ec_2Earithmetic_2EBIT1 _let_182))) (let ((_let_216 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_215))))) (let ((_let_217 (mono_2Ec_2Earithmetic_2ENUMERAL _let_196))) (let ((_let_218 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_215))))) (let ((_let_219 (mono_2Ec_2Earithmetic_2ENUMERAL _let_34))) (let ((_let_220 (mono_2Ec_2Earithmetic_2EBIT1 _let_179))) (let ((_let_221 (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_220)))) (let ((_let_222 (s _let_5))) (let ((_let_223 (s (_let_46 _let_38)))) (let ((_let_224 (mono_2Ec_2Earithmetic_2EODD mono_2Ec_2Enum_2E0))) (let ((_let_225 (_let_91 tyop_2Emin_2Ebool))) (let ((_let_226 (s (_let_37 _let_225)))) (let ((_let_227 (s _let_60))) (let ((_let_228 (s (_let_15 (_let_15 (_let_46 (_let_46 tyop_2Enum_2Enum))))))) (let ((_let_229 (s _let_12))) (let ((_let_230 (s _let_225))) (let ((_let_231 (s (_let_64 _let_38)))) (let ((_let_232 (_let_143 _let_142))) (let ((_let_233 (s (_let_20 (_let_143 _let_232))))) (let ((_let_234 (s _let_142))) (let ((_let_235 (s (_let_15 _let_142)))) (let ((_let_236 (s (_let_37 _let_154)))) (let ((_let_237 (s _let_14))) (let ((_let_238 (s (_let_13 (_let_115 ((tyop_2Emin_2Efun (_let_115 _let_171)) tyop_2Estring_2Echar)))))) (let ((_let_239 (s _let_29))) (let ((_let_240 (s (_let_64 _let_106)))) (let ((_let_241 (mono_2Ec_2Earithmetic_2ENUMERAL _let_198))) (let ((_let_242 (= (mono_2Ec_2Epred__set_2ESUM__SET mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0))) (let ((_let_243 (s ((tyop_2Emin_2Efun _let_147) _let_147)))) (let ((_let_244 (_let_13 _let_14))) (let ((_let_245 (s (_let_20 _let_244)))) (let ((_let_246 (s (_let_15 _let_38)))) (let ((_let_247 (s (_let_15 ((tyop_2Emin_2Efun (_let_15 _let_30)) _let_29))))) (let ((_let_248 (s (_let_64 _let_86)))) (let ((_let_249 (= (mono_2Ec_2Enumpair_2Etri mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (let ((_let_250 (s ((tyop_2Emin_2Efun _let_135) _let_136)))) (let ((_let_251 (s (_let_37 _let_55)))) (let ((_let_252 (_let_20 _let_51))) (let ((_let_253 (tyop_2Emin_2Efun _let_252))) (let ((_let_254 (s (_let_64 (_let_253 _let_103))))) (let ((_let_255 (_let_37 _let_38))) (let ((_let_256 (s _let_255))) (let ((_let_257 (s _let_76))) (let ((_let_258 (tyop_2Emin_2Efun _let_101))) (let ((_let_259 (s (_let_258 _let_102)))) (let ((_let_260 (s (_let_46 _let_80)))) (let ((_let_261 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_262 (s (_let_15 (_let_20 _let_261))))) (let ((_let_263 (= (mono_2Ec_2Epred__set_2EPROD__SET mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) _let_152))) (let ((_let_264 (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Enum_2E0))) (let ((_let_265 (s _let_108))) (let ((_let_266 (s (_let_15 _let_171)))) (let ((_let_267 (s (_let_129 _let_225)))) (let ((_let_268 (s (_let_15 _let_55)))) (let ((_let_269 (s (_let_91 _let_225)))) (let ((_let_270 (s (_let_15 _let_86)))) (let ((_let_271 (s (_let_20 _let_255)))) (let ((_let_272 (s ((tyop_2Emin_2Efun (_let_15 _let_261)) _let_36)))) (let ((_let_273 (s (_let_31 _let_30)))) (let ((_let_274 (s _let_72))) (let ((_let_275 (s _let_57))) (let ((_let_276 (s (_let_37 _let_43)))) (let ((_let_277 (tyop_2Emin_2Efun _let_136))) (let ((_let_278 (s (_let_20 (_let_277 (_let_277 _let_136)))))) (let ((_let_279 (s (_let_20 _let_36)))) (let ((_let_280 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_281 (tyop_2Emin_2Efun _let_280))) (let ((_let_282 (_let_281 _let_280))) (let ((_let_283 (s (_let_59 _let_282)))) (let ((_let_284 (s (_let_20 (_let_281 _let_282))))) (let ((_let_285 (s _let_43))) (let ((_let_286 (s _let_150))) (let ((_let_287 (s _let_280))) (let ((_let_288 (tyop_2Emin_2Efun _let_103))) (let ((_let_289 (s (_let_64 (_let_288 tyop_2Emin_2Ebool))))) (let ((_let_290 (s (_let_20 (_let_53 _let_101))))) (let ((_let_291 (_let_15 _let_43))) (let ((_let_292 (s (_let_46 _let_291)))) (let ((_let_293 (s _let_111))) (let ((_let_294 (_let_15 _let_51))) (let ((_let_295 (tyop_2Emin_2Efun _let_126))) (let ((_let_296 (s (_let_295 _let_294)))) (let ((_let_297 (s (_let_46 _let_121)))) (let ((_let_298 (s (_let_46 _let_30)))) (let ((_let_299 (s (_let_31 _let_123)))) (let ((_let_300 (s ((tyop_2Emin_2Efun _let_86) _let_51)))) (let ((_let_301 (_let_27 tyop_2Emin_2Ebool))) (let ((_let_302 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_303 (_let_27 _let_302))) (let ((_let_304 (s ((tyop_2Emin_2Efun _let_303) _let_301)))) (let ((_let_305 (tyop_2Elist_2Elist _let_12))) (let ((_let_306 (tyop_2Emin_2Efun _let_305))) (let ((_let_307 (s (_let_306 _let_12)))) (let ((_let_308 (s (_let_64 _let_36)))) (let ((_let_309 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_310 (s (_let_15 _let_309)))) (let ((_let_311 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_43)) _let_43))) (let ((_let_312 (s _let_311))) (let ((_let_313 (_let_115 tyop_2Enum_2Enum))) (let ((_let_314 (tyop_2Emin_2Efun _let_313))) (let ((_let_315 (s (_let_37 (_let_314 tyop_2Emin_2Ebool))))) (let ((_let_316 (tyop_2Emin_2Efun _let_116))) (let ((_let_317 (s (_let_316 _let_98)))) (let ((_let_318 (_let_91 tyop_2Enum_2Enum))) (let ((_let_319 (_let_15 _let_318))) (let ((_let_320 (s _let_319))) (let ((_let_321 (s _let_318))) (let ((_let_322 (s (_let_37 (_let_295 tyop_2Emin_2Ebool))))) (let ((_let_323 (s (_let_20 (_let_127 (_let_127 _let_82)))))) (let ((_let_324 (= (mono_2Ec_2Erich__list_2ECOUNT__LIST mono_2Ec_2Enum_2E0) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum))) (let ((_let_325 (s _let_121))) (let ((_let_326 (s (_let_40 (_let_20 _let_86))))) (let ((_let_327 (tyop_2Emin_2Efun _let_318))) (let ((_let_328 (s (_let_327 _let_311)))) (let ((_let_329 (tyop_2Emin_2Efun _let_71))) (let ((_let_330 (s (_let_329 ((tyop_2Emin_2Efun (_let_115 _let_108)) tyop_2Emin_2Ebool))))) (let ((_let_331 (s (_let_61 (_let_89 _let_137))))) (let ((_let_332 (_let_15 tyop_2Estring_2Echar))) (let ((_let_333 (tyop_2Emin_2Efun _let_332))) (let ((_let_334 (_let_333 _let_332))) (let ((_let_335 (s _let_334))) (let ((_let_336 (s (_let_31 _let_319)))) (let ((_let_337 ((tyop_2Epair_2Eprod _let_309) _let_309))) (let ((_let_338 ((tyop_2Epair_2Eprod _let_23) _let_337))) (let ((_let_339 (tyop_2Elist_2Elist _let_338))) (let ((_let_340 (tyop_2Emin_2Efun _let_339))) (let ((_let_341 (s ((tyop_2Emin_2Efun _let_338) (_let_340 _let_339))))) (let ((_let_342 (s (_let_340 tyop_2Enum_2Enum)))) (let ((_let_343 (s (_let_40 ((tyop_2Emin_2Efun _let_337) _let_338))))) (let ((_let_344 (s (_let_20 _let_309)))) (let ((_let_345 (_let_13 tyop_2Enum_2Enum))) (let ((_let_346 (s ((tyop_2Emin_2Efun _let_345) (_let_141 _let_29))))) (let ((_let_347 (s _let_339))) (let ((_let_348 (tyop_2Emin_2Efun _let_309))) (let ((_let_349 (s (_let_348 (_let_348 _let_337))))) (let ((_let_350 (mono_2Ec_2Enumposrep_2El2n _let_19))) (let ((_let_351 (s (_let_37 _let_121)))) (let ((_let_352 (s ((tyop_2Emin_2Efun (_let_15 _let_291)) _let_44)))) (let ((_let_353 (s (_let_37 (_let_46 _let_36))))) (let ((_let_354 (_let_53 _let_57))) (let ((_let_355 (s (_let_20 _let_354)))) (let ((_let_356 (s (_let_327 ((tyop_2Emin_2Efun _let_291) _let_29))))) (let ((_let_357 (s (_let_314 (_let_20 _let_313))))) (let ((_let_358 (s _let_354))) (let ((_let_359 (s (_let_59 (_let_53 _let_135))))) (let ((_let_360 (s (_let_258 tyop_2Emin_2Ebool)))) (let ((_let_361 (s (_let_258 _let_51)))) (let ((_let_362 (s (_let_40 _let_354)))) (let ((_let_363 (s _let_51))) (let ((_let_364 (s (_let_53 tyop_2Enum_2Enum)))) (let ((_let_365 (s ((tyop_2Emin_2Efun _let_130) _let_76)))) (let ((_let_366 (_let_1 _let_142))) (let ((_let_367 (_let_96 _let_366))) (let ((_let_368 (tyop_2Emin_2Efun _let_367))) (let ((_let_369 (_let_368 (_let_368 tyop_2Emin_2Ebool)))) (let ((_let_370 (tyop_2Emin_2Efun _let_369))) (let ((_let_371 (_let_370 tyop_2Emin_2Ebool))) (let ((_let_372 (s _let_371))) (let ((_let_373 (tyop_2Emin_2Efun _let_294))) (let ((_let_374 (s (_let_37 (_let_373 tyop_2Emin_2Ebool))))) (let ((_let_375 (s (_let_64 (_let_253 tyop_2Emin_2Ebool))))) (let ((_let_376 (s (_let_129 ((tyop_2Emin_2Efun (_let_373 _let_294)) _let_294))))) (let ((_let_377 (s (_let_15 ((tyop_2Emin_2Efun _let_78) (_let_1 _let_78)))))) (let ((_let_378 (_let_46 _let_47))) (let ((_let_379 (s ((tyop_2Emin_2Efun _let_378) _let_378)))) (let ((_let_380 (s (_let_129 _let_378)))) (let ((_let_381 (s (_let_31 _let_154)))) (let ((_let_382 (tyop_2Ebool_2Eitself tyop_2Eone_2Eone))) (let ((_let_383 (s ((tyop_2Emin_2Efun _let_382) tyop_2Enum_2Enum)))) (let ((_let_384 (s _let_63))) (let ((_let_385 (s _let_382))) (let ((_let_386 (s (_let_143 tyop_2Enum_2Enum)))) (let ((_let_387 (s (_let_46 _let_232)))) (let ((_let_388 (s _let_136))) (let ((_let_389 (s _let_23))) (let ((_let_390 (tyop_2Emin_2Efun _let_366))) (let ((_let_391 (s (_let_13 (_let_390 _let_367))))) (let ((_let_392 (_let_115 tyop_2Estring_2Echar))) (let ((_let_393 (s _let_392))) (let ((_let_394 (s (_let_13 (_let_15 (_let_96 tyop_2Enum_2Enum)))))) (let ((_let_395 (s (_let_73 (_let_73 _let_74))))) (let ((_let_396 (s (_let_20 (_let_115 _let_392))))) (let ((_let_397 (s (_let_15 (_let_143 _let_366))))) (let ((_let_398 ((tyop_2Emin_2Efun _let_97) _let_305))) (let ((_let_399 (s ((tyop_2Emin_2Efun _let_398) _let_398)))) (let ((_let_400 (s (_let_115 (_let_13 _let_71))))) (let ((_let_401 (s ((tyop_2Emin_2Efun _let_371) _let_369)))) (let ((_let_402 (s tyop_2Estring_2Echar))) (let ((_let_403 (s (_let_390 ((tyop_2Emin_2Efun (_let_15 (_let_143 _let_12))) _let_12))))) (let ((_let_404 (_let_306 _let_305))) (let ((_let_405 (s (_let_20 (_let_306 _let_404))))) (let ((_let_406 (s (_let_73 (_let_13 ((tyop_2Emin_2Efun (_let_329 _let_12)) _let_12)))))) (let ((_let_407 (s _let_345))) (let ((_let_408 (s (_let_13 _let_404)))) (let ((_let_409 (_let_115 _let_14))) (let ((_let_410 (tyop_2Emin_2Efun _let_409))) (let ((_let_411 (s (_let_410 _let_244)))) (let ((_let_412 (s _let_82))) (let ((_let_413 (s _let_409))) (let ((_let_414 (s (_let_368 ((tyop_2Emin_2Efun (_let_13 (_let_390 _let_12))) _let_12))))) (let ((_let_415 (_let_368 _let_12))) (let ((_let_416 (s (_let_370 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_415) _let_415)) _let_415))))) (let ((_let_417 (s _let_305))) (let ((_let_418 (s (_let_73 (_let_20 ((tyop_2Emin_2Efun (_let_329 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))))) (let ((_let_419 (s (_let_329 _let_72)))) (let ((_let_420 (_let_13 _let_305))) (let ((_let_421 (s ((tyop_2Emin_2Efun (_let_13 _let_420)) _let_398)))) (let ((_let_422 (s (_let_329 (_let_410 _let_12))))) (let ((_let_423 (s _let_244))) (let ((_let_424 (s ((tyop_2Emin_2Efun (_let_115 _let_12)) _let_420)))) (let ((_let_425 (s (_let_316 _let_108)))) (let ((_let_426 (s ((tyop_2Emin_2Efun _let_301) tyop_2Emin_2Ebool)))) (let ((_let_427 (s (_let_27 (_let_20 _let_302))))) (let ((_let_428 (s ((tyop_2Emin_2Efun (_let_15 (_let_15 _let_302))) _let_303)))) (let ((_let_429 (s (_let_83 ((tyop_2Emin_2Efun (_let_15 _let_126)) _let_82))))) (let ((_let_430 (s ((tyop_2Emin_2Efun _let_392) _let_14)))) (let ((_let_431 (s (_let_129 ((tyop_2Emin_2Efun _let_334) _let_332))))) (let ((_let_432 (s (_let_37 (_let_314 _let_116))))) (let ((_let_433 (_let_314 _let_313))) (let ((_let_434 (s _let_433))) (let ((_let_435 (s (_let_118 ((tyop_2Emin_2Efun _let_433) _let_313))))) (let ((_let_436 (s _let_119))) (let ((_let_437 (s (_let_333 (_let_314 _let_392))))) (let ((_let_438 (s _let_16))) (let ((_let_439 (s (_let_314 (_let_13 _let_43))))) (let ((_let_440 (s (_let_333 (_let_91 _let_12))))) (let ((_let_441 (s tyop_2Enum_2Enum))) (let ((_let_442 (s (_let_37 (_let_373 _let_126))))) (let ((_let_443 (s (_let_288 _let_252)))) (let ((_let_444 (s (_let_61 (_let_138 tyop_2Emin_2Ebool))))) (let ((_let_445 (s _let_102))) (let ((_let_446 (s (_let_127 (_let_127 ((tyop_2Emin_2Efun _let_84) _let_82)))))) (let ((_let_447 (s (_let_64 tyop_2Enum_2Enum)))) (SCOPE (EQ_RESOLVE (ASSUME |:args| (_let_132)) (MACRO_SR_EQ_INTRO |:args| (_let_132 7 12))) |:args| ((forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))) (= (_let_447 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Emin_2Ebool)) (_let_447 c_2Epred__set_2ECARD_2E0)) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V1y_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0f_2E0)) ((s A_27b) V2x_2E0))) (_let_1 V1y_2E0))))) (exists ((V3g_2E0 u)) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0f_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3g_2E0)) _let_2)))) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardgeq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s2_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_1) _let_1))) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1e_2E0 u) (V2A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2A_2E0))) (let ((_let_5 (c_2Ecardinal_2Eset__exp_2E2 _let_4))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s A_27a) V1e_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_8) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ecardinal_2Ecardeq_2E2 (_let_7 (_let_5 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_8) _let_3))))) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) _let_6)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) (_let_7 (_let_5 _let_3)))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0t2_2E0 u) (V1t1_2E0 u) (V2s2_2E0 u) (V3s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)) V0t2_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2s2_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V1t1_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3s1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_3))) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27d)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Emin_2Ebool) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1m) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n))) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardgeq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s) (exists ((V1a mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1a) V0s))))) (forall ((V0 (-> (-> Bool Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))) (exists ((V1A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (and (forall ((V2a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2a_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1A_2E0)))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (= (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1A_2E0))) (_let_2 V0s_2E0)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (or ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_3))) ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_3) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (or (not _let_1) _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (= V0n mono_2Ec_2Enum_2E0) (= (mono_2Ec_2Epred__set_2Ecount V0n) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))))) (= _let_4 (and _let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_1))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27b1 d) (A_27b2 d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b2) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b1) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_1))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))) (exists ((V1A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (and (= (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1A_2E0))) (_let_2 V0s_2E0)) (forall ((V2a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2a_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1A_2E0)))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (forall ((V3a1_2E0 u) (V4a2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4a2_2E0))) (let ((_let_4 (_let_2 V3a1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1A_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6))) (not (= _let_4 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (or _let_1 (not _let_1)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s _let_6))) (= (_let_9 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_4))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F1_2E0)) _let_6))) _let_3))) (and (forall ((V2a_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2a_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0A_2E0)))) (exists ((V3b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V1f_2E0)) (_let_1 V2a_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_1 V3b_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) A_27a)) c_2Eoption_2ETHE_2E0)) _let_6))) _let_3) _let_3)))))))))))))) (=> (forall ((V0A_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s _let_4) V1f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_8 _let_9))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_6 _let_11)) F0_2E0)) _let_3))) _let_5)) (_let_10 ((c_2Epair_2E_2C_2E2 _let_5) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F1_2E0)) _let_5))) _let_3))))))))))))))))) (forall ((V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 (_let_5 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool)))) (let ((_let_7 (s (_let_5 tyop_2Emin_2Ebool)))) (= (_let_7 (c_2Ecardinal_2Ebijns_2E1 _let_3)) (_let_7 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_3)))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))))) (forall ((A_27a d) (V0t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0t_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardgeq_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_1))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)))) (= (_let_1 c_2Epred__set_2EUNIV_2E0) (_let_1 (c_2Ecardinal_2Elist_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (forall ((A_27a1 d) (A_27a2 d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a2) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a1) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27d)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Ecardinal_2EHAS__SIZE_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27b1 d) (A_27b2 d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b2) (tyop_2Eoption_2Eoption A_27a2))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b1) (tyop_2Eoption_2Eoption A_27a1))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1t_2E0 u) (V0s_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 ((s A_27a) V5x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) V1t_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_1 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_3))) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 ((s _let_5) ((app_2E2 _let_7) _let_4))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u) (V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_3) (_let_8 (i_mono_2Etyop_2Enum_2Enum V2m))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V1t_2E0)) _let_1)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_4)))) V3n) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4)))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Epred__set_2ECARD_2E1 ((s _let_4) (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) ((s _let_5) V1t_2E0)))) _let_3)))))))))) ((mono_2Ec_2Earithmetic_2E_2A V2m) V3n)))))))))))))) (forall ((A_27a d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0B_2E0))) (let ((_let_3 (c_2Epred__set_2ECROSS_2E2 _let_2))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 V1A_2E0))) (let ((_let_6 (c_2Epred__set_2ECROSS_2E2 _let_5))) (let ((_let_7 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_2)))) (= (_let_4 ((c_2Epred__set_2ECROSS_2E2 _let_7) _let_7)) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (_let_6 _let_5))) (_let_4 (_let_6 _let_2))))) (_let_4 (_let_3 _let_5))))) (_let_4 (_let_3 _let_2))))))))))))) (forall ((A_27a d) (V0e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Elist_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0e_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))) (let ((_let_2 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_1))))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_1))) (= _let_2 ((mono_2Ec_2Earithmetic_2EEXP _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2))))) (forall ((V1t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (exists ((V3g_2E0 u)) (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V3g_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_2)))) _let_2))))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 _let_1) _let_1))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption _let_4))) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecardinal_2Eset__exp_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecardinal_2Eset__exp_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0B_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1A_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))) (forall ((A_27a d)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (not (= V0n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) ((tyop_2Epair_2Eprod A_27c) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epred__set_2EGSPEC_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epred__set_2EGSPEC_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V2f_2E0 u)) (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V2f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1B_2E0 u) (V0A_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F1_2E0)) ((s _let_4) V1B_2E0)))) ((s _let_3) V0A_2E0)))) ((s _let_2) V2f_2E0)))) (and (forall ((V5b_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V5b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) V1B_2E0))))) (= (_let_2 ((app_2E2 ((s (_let_4 _let_1)) V2f_2E0)) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0)))))))) (forall ((V3b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3b_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)))) (exists ((V4a_2E0 u)) (let ((_let_1 ((s A_27b) V4a_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0A_2E0)))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V2f_2E0)) ((s A_27a) V3b_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_1))))))))))))))))))) (=> (forall ((V1B_2E0 u) (V0A_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s _let_2) V2f_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0A_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1B_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_4))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_6))) (let ((_let_13 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_14 (s _let_13))) (let ((_let_15 (_let_8 _let_13))) (let ((_let_16 (_let_10 _let_15))) (= (_let_14 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_12 _let_16)) F0_2E0)) _let_7))) _let_5))) _let_3)) (_let_14 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_12 _let_11)) F1_2E0)) _let_7))) _let_5))) _let_3)))))))))))))))))))))) (forall ((V0A_2E0 u) (V1B_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0A_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V1B_2E0))) (let ((_let_6 (_let_3 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_7 (tyop_2Emin_2Efun _let_6))) (let ((_let_8 (_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 (s (_let_7 tyop_2Emin_2Ebool)))) (= (_let_10 ((c_2Ecardinal_2Eset__exp_2E2 _let_2) _let_5)) (_let_10 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_2))))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (= (or (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))) (exists ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27b) _let_1)))) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27b1 d) (A_27b2 d) (V0b2_2E0 u) (V1b1_2E0 u) (V2a2_2E0 u) (V3a1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b2))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0b2_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a2) tyop_2Emin_2Ebool)) V2a2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b1))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1b1_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a1) tyop_2Emin_2Ebool)) V3a1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_6) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_4 (tyop_2Eoption_2Eoption A_27a1))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_6) _let_5))) ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a2))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_3) _let_2))))))))))))))) (= (_let_69 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Emin_2Ebool)) (_let_69 c_2Epred__set_2EFINITE_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1u_2E0 u) (V2v_2E0 u)) (= (forall ((V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V3t_2E0)) (_let_1 V2v_2E0)))) (exists ((V4s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V4s_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_3 V1u_2E0)))) (= (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_4)) (_let_1 V3t_2E0))))))))))) (forall ((V5y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V5y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2v_2E0)))) (exists ((V6x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V6x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1u_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)) (_let_1 V5y_2E0))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 _let_2) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Ecardinal_2Ecardeq_2E0)) _let_2))) X1))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (and (not (= V0m V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (not (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_1))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0A_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_2))) _let_2))))))) (forall ((V0r Bool) (V1p Bool) (V2q Bool)) (= (=> (and V2q V1p) V0r) (=> V2q (=> V1p V0r)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0A_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_1) _let_2))) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))) _let_2)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0s1_2E0 u) (V1s2_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s2_2E0)))) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s2_2E0)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_1 c_2Epred__set_2EEMPTY_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V2g_2E0 u)) (forall ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V4y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s A_27b) V4y_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_3 ((app_2E2 ((s (_let_1 A_27a)) V2g_2E0)) _let_2)) (_let_3 V3x_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_2) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Ecardinal_2Ecardleq_2E0)) _let_2))) X1))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) V1f_2E0)) _let_3))) _let_3)))) (= (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27a)) V1f_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_1 (_let_7 _let_3)) (_let_1 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2)))))))))) (forall ((V2y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2y_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3x_2E0))) (and (= (_let_2 ((app_2E2 ((s (_let_1 A_27a)) V1f_2E0)) _let_3)) (_let_2 V2y_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0r_2E0 u) (V1p_2E0 u) (V2q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1p_2E0))) (let ((_let_3 (_let_1 V2q_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))) (let ((_let_5 (c_2Epred__set_2EINTER_2E2 _let_2))) (let ((_let_6 (_let_1 (_let_5 _let_3)))) (let ((_let_7 (_let_1 (_let_5 _let_2)))) (let ((_let_8 (_let_1 V0r_2E0))) (let ((_let_9 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_6) _let_8)))) (and (= _let_9 _let_9) (= _let_9 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_8))) (= _let_7 _let_2) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_7) _let_3)) _let_6) (= _let_6 _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0r Bool) (V1p Bool) (V2q Bool)) (= (=> (and V2q V1p) V0r) (=> V1p (=> V2q V0r)))) (forall ((A_27a d) (A_27b d) (V0s1_2E0 u) (V1s2_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s2_2E0)))) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s2_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0 (-> mono_2Etyop_2Enum_2Enum Bool)) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_1))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecardinal_2EHAS__SIZE_2E0)) _let_2))) X1)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_1) ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_1))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Epred__set_2ECARD_2E1 _let_2))) V1n) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1A_2E0))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_1)))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n)) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_2 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V0n)))))) _let_1)))))))) (forall ((V0 Bool) (V1 (-> Bool Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V1t_2E0 u) (V2R_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 ((s A_27b) V6y_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27a) V5x_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 ((s _let_8) V2R_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_2 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_11)) F0_2E0)) _let_3))) _let_9))) _let_6))) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_9) ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))))))))) (=> (forall ((V0s_2E0 u) (V2R_2E0 u) (V7y_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((s A_27a) V8x_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V2R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V0s_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F1_2E0)) _let_9))) _let_5))) _let_1))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (= (exists ((V2R_2E0 u)) (and (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_5 tyop_2Emin_2Ebool)) V1t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_3F_21_2E1 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F1_2E0)) (_let_4 V0s_2E0)))) ((s _let_2) V2R_2E0)))) _let_1))))))))))))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_5 tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_3F_21_2E1 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) (_let_4 V1t_2E0)))) ((s _let_2) V2R_2E0)))) _let_1))))))))))))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s A_27a) V3x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V2R_2E0)) ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_1))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2EIN_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V1m))) (= (_let_1 (mono_2Ec_2Enum_2ESUC V2n)) (or (= V1m V2n) (_let_1 V2n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) mono_2Ec_2Enum_2E0) mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardgt_2E2 _let_2) _let_1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0A_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Elist_2E1 _let_1))) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ecardinal_2Ecardleq_2E0)) _let_5))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a1 d) (A_27b1 d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b1))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a1))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (= (exists ((V2f_2E0 u)) (forall ((V3y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V3y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V4x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 (s A_27b))) (and (= (_let_3 V3y_2E0) (_let_3 ((app_2E2 ((s (_let_1 A_27b)) V2f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardgeq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (forall ((A_27a d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27d)) A_27e))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (V0G_2E0 u) (V1seen_2E0 u) (V2fringe_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_1)) V0G_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 ((s (_let_3 tyop_2Emin_2Ebool)) (c_2EdirGraph_2EParents_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 (_let_2 (((((c_2Ebft_2EBFT_2E5 _let_4) ((s (_let_3 ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) (_let_2 V1seen_2E0)) (_let_2 V2fringe_2E0)) (_let_2 c_2Elist_2ENIL_2E0))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (V0G_2E0 u) (V1f_2E0 u) (V2seen_2E0 u) (V3fringe_2E0 u) (V4acc_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) V3fringe_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V2seen_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_6 (tyop_2Elist_2Elist A_27b)))) (let ((_let_9 ((s _let_8) V0G_2E0))) (let ((_let_10 ((tyop_2Epair_2Eprod _let_1) A_27e))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_4) _let_10))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27c) _let_11))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (c_2Ebft_2ERel_2E1 ((s ((tyop_2Epair_2Eprod _let_8) _let_12)) ((c_2Epair_2E_2C_2E2 _let_9) ((s _let_12) ((c_2Epair_2E_2C_2E2 ((s A_27c) V1f_2E0)) ((s _let_11) ((c_2Epair_2E_2C_2E2 _let_5) ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_2) ((s A_27e) V4acc_2E0)))))))))))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_7 ((c_2Epred__set_2EDIFF_2E2 (_let_7 (c_2EdirGraph_2EParents_2E1 _let_9))) (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 _let_5)))))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (V0G_2E0 u) (V1fringe_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) (c_2EdirGraph_2EParents_2E1 ((s (_let_1 (tyop_2Elist_2Elist A_27a))) V0G_2E0)))))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 (_let_2 V1fringe_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 _let_1)) V0G_2E0))) (let ((_let_7 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_8 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2EdirGraph_2EREACH__LIST_2E2 _let_6) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 (_let_2 (((((c_2Ebft_2EBFT_2E5 _let_6) ((s (_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) _let_3) _let_4) _let_3))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0G_2E0 u) (V1f_2E0 u) (V2seen_2E0 u) (V3fringe_2E0 u) (V4acc_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3fringe_2E0))) (let ((_let_4 (_let_2 V2seen_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 (s (_let_5 _let_1)))) (let ((_let_9 (_let_8 V0G_2E0))) (let ((_let_10 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_11 (c_2Ebool_2EIN_2E2 ((s A_27a) V5x_2E0)))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_10 (c_2Elist_2ELIST__TO__SET_2E1 _let_4)))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 _let_13)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_10 ((c_2EdirGraph_2EREACH__LIST_2E2 (_let_8 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_9) _let_13))) _let_3))))) (= _let_7 (_let_6 c_2Elist_2ECONS_2E0)) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (c_2Epred__set_2EFINITE_2E1 (_let_10 (c_2EdirGraph_2EParents_2E1 _let_9)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_10 (c_2Elist_2ELIST__TO__SET_2E1 (_let_2 (((((c_2Ebft_2EBFT_2E5 _let_9) _let_7) _let_4) _let_3) (_let_2 V4acc_2E0))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EdirGraph_2EEXCLUDE_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27d)) A_27e)))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27c) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27c) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun A_27a) (tyop_2Elist_2Elist A_27b))) ((tyop_2Epair_2Eprod A_27c) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27d)) A_27e)))))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (_let_4 (c_2Ebft_2ERel_2E1 _let_2))) (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ebft_2ERel_2E0)) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EdirGraph_2EREACH__LIST_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EdirGraph_2EREACH__LIST_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F17 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= ((F9 V2a) V12t) (not (V2a V12t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= ((F8 V2a) V11t) (not (V2a V11t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V10t)) ((F7 V2a) V10t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= ((F6 V2a) V9t) (not (V2a V9t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((F5 V2a) V8t) (not (V2a V8t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= ((F4 V2a) V7t) (not (V2a V7t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V6t)) ((F3 V2a) V6t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= ((F2 V2a) V5t) (not (V2a V5t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V21t mono_2Etyop_2Enum_2Enum)) (= ((F18 V2a) V21t) (not (V2a V21t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V20t)) ((F17 V2a) V20t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V19t)) ((F16 V2a) V19t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V18t)) ((F15 V2a) V18t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V17t)) ((F14 V2a) V17t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= ((F13 V2a) V16t) (not (V2a V16t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= ((F12 V2a) V15t) (not (V2a V15t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= ((F11 V2a) V14t) (not (V2a V14t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((F10 V2a) V13t) (not (V2a V13t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V4t)) ((F1 V2a) V4t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V2a) V3t) (not (V2a V3t)))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL (F1 V2a)) V0t) (not ((mono_2Ec_2ETemporal__Logic_2EALWAYS V2a) V0t))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F5 V2a)) V1b) V0t) (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE (F7 V2a)) V1b) V0t) (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t))) (= (not ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V2a) V0t)) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL (F11 V2a)) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (F14 V2a)) V1b) V0t) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V1b) V0t))) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F15 V2a)) V1b) V0t) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V1b) V0t))) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V1b) V0t)) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F18 V2a)) V1b) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE (F17 V2a)) V1b) V0t) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V1b) V0t))) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V1b) V0t)) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN (F16 V2a)) V1b) V0t)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V1b) V0t)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN (F13 V2a)) V1b) V0t)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F12 V2a)) V0t) (not ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V2a) V0t))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (F10 V2a)) V0t) (not ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2a) V0t))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT (F9 V2a)) V0t) (not ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V0t))) (= (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t)) (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F8 V2a)) V1b) V0t)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN (F6 V2a)) V1b) V0t) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t))) (= (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t)) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F4 V2a)) V1b) V0t)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F3 V2a)) V1b) V0t) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t))) (= (not ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V2a) V0t)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F2 V2a)) V0t)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT (F0 V2a)) V0t) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V0t))))))))))))))))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1b) V0t0))) (and (= (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V3a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a) V1b) V0t0))) _let_1) (= (forall ((V4a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V4a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V4a) V1b) V0t0))) _let_1) (= (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))) _let_1)))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V4t)) ((F7 V1a) V4t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((F2 V1a) V8t) (not (V1a V8t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (((F3 V1a) V0b) V10t) (and (not (V1a V10t)) (not (V0b V10t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (((F8 V1a) V0b) V15t) (and (V0b V15t) (not (V1a V15t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V17t)) (V1a V17t)) (((F6 V1a) V0b) V17t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V14t) (V1a V14t)) (((F5 V1a) V0b) V14t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V12t) (and (V1a V12t) (V0b V12t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE F0) (F7 V1a)) V2x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) V9x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V0b) ((F3 V1a) V0b)) V9x))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V0b) ((F4 V1a) V0b)) V11x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) V11x))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V0b) ((F6 V1a) V0b)) V16x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) V16x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) V13x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F5 V1a) V0b)) ((F8 V1a) V0b)) V13x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE (F2 V1a)) V0b) V7x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) V7x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE F1) V1a) V5x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V5x))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F7 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= ((F6 V1a) V20t) (not (V1a V20t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V17t)) ((F5 V0b) V17t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= ((F3 V0b) V11t) (not (V0b V11t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((F2 V0b) V8t) (not (V0b V8t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= ((F1 V1a) V5t) (not (V1a V5t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V14t) (or (not (V1a V14t)) (not (V0b V14t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (((F8 V1a) V0b) V9t) (and (not (V1a V9t)) (not (V0b V9t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (((F10 V1a) V0b) V15t) (and (V0b V15t) (not (V1a V15t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V18t)) (V1a V18t)) (((F11 V1a) V0b) V18t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F9 V1a) V0b) V12t) (and (V0b V12t) (V1a V12t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) F0) V2x))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F1 V1a)) F7) V4x)) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V4x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V7x) (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F2 V0b)) ((F8 V1a) V0b)) V7x)))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL ((F4 V1a) V0b)) ((F10 V1a) V0b)) V13x)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V13x))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F6 V1a)) V0b) V19x)) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V19x))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V16x) (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F5 V0b)) ((F11 V1a) V0b)) V16x))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V10x) (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F3 V0b)) ((F9 V1a) V0b)) V10x)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1b) V0t) (and (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V1b) V0t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V1b) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V2a) V0t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1b) V2a) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V1b) V0t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V1b) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V1b) V0t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V1b) V0t))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F16 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F19 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F24 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F25 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F17 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F22 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F23 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F21 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F20 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V33t mono_2Etyop_2Enum_2Enum)) (= (((F16 V0d) V2b) V33t) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V33t) (V0d V33t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V26t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V26t) (V0d V26t)) (((F13 V0d) V1c) V26t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V23t mono_2Etyop_2Enum_2Enum)) (= (((F11 V2b) V3a) V23t) (or (V2b V23t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V3a) V23t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V22t mono_2Etyop_2Enum_2Enum)) (= (or (V3a V22t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V22t)) (((F10 V3a) V2b) V22t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (or (V1c V5t) (V2b V5t)) (((F0 V2b) V1c) V5t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V34t mono_2Etyop_2Enum_2Enum)) (= (((F19 V3a) V0d) V34t) (and (not (V3a V34t)) (not (V0d V34t))))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V27t mono_2Etyop_2Enum_2Enum)) (= (((F18 V3a) V0d) V27t) (and (not (V3a V27t)) (not (V0d V27t))))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (((F4 V3a) V1c) V11t) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V11t) (V3a V11t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (((F1 V2b) V1c) V7t) (and (V2b V7t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V7t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (and (not ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0d) V16t)) (V3a V16t)) (((F7 V3a) V0d) V16t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V20t) (V3a V20t)) (((F9 V3a) V2b) V20t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V25t mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2b) V1c) V25t) (V3a V25t)) ((((F12 V3a) V2b) V1c) V25t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V32t mono_2Etyop_2Enum_2Enum)) (= ((((F15 V3a) V2b) V1c) V32t) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2b) V1c) V32t) (V3a V32t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((((F3 V2b) V1c) V0d) V10t) (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1c) V0d) V10t) (V2b V10t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1c) V0d) V15t) (V2b V15t)) ((((F6 V2b) V1c) V0d) V15t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (and (V3a V8t) (V1c V8t) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V8t)) ((((F2 V3a) V1c) V2b) V8t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V36t mono_2Etyop_2Enum_2Enum)) (= (((F24 V0d) V2b) V36t) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V36t) (V0d V36t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V37t mono_2Etyop_2Enum_2Enum)) (= (and (not (V3a V37t)) (not (V0d V37t))) (((F25 V3a) V0d) V37t))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V35t mono_2Etyop_2Enum_2Enum)) (= (or (not (V1c V35t)) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F24 V0d) V2b)) ((F25 V3a) V0d)) V35t)) (((((F17 V1c) V0d) V2b) V3a) V35t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V29t mono_2Etyop_2Enum_2Enum)) (= (or (V0d V29t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V29t)) (((F22 V0d) V1c) V29t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V30t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0d V30t)) (not (V3a V30t))) (((F23 V3a) V0d) V30t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V28t mono_2Etyop_2Enum_2Enum)) (= (((((F14 V2b) V1c) V0d) V3a) V28t) (or (V2b V28t) (V1c V28t) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F22 V0d) V1c)) ((F23 V3a) V0d)) V28t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= (((F21 V3a) V1c) V13t) (and (V3a V13t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V13t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V0d V12t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F21 V3a) V1c)) V2b) V12t)) (((((F5 V0d) V3a) V1c) V2b) V12t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (and (V3a V18t) (not ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0d) V18t))) (((F20 V3a) V0d) V18t))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (((((F8 V1c) V0d) V3a) V2b) V17t) (and (not (V0d V17t)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F20 V3a) V0d)) V2b) V17t) (V1c V17t)))) (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V21x mono_2Etyop_2Enum_2Enum)) (= (or (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F11 V2b) V3a)) (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1c)) V21x) (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V21x) (V3a V21x))) (V1c V21x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F10 V3a) V2b)) V1c) V21x))) (forall ((V31x mono_2Etyop_2Enum_2Enum)) (= (and (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F16 V0d) V2b)) ((F19 V3a) V0d)) V31x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2b) V1c) V31x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((((F17 V1c) V0d) V2b) V3a)) V0d) V31x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (((F15 V3a) V2b) V1c)) V0d) V31x))) (forall ((V24x mono_2Etyop_2Enum_2Enum)) (= (and (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F13 V0d) V1c)) ((F18 V3a) V0d)) V24x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2b) V1c) V24x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((((F14 V2b) V1c) V0d) V3a)) V0d) V24x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (((F12 V3a) V2b) V1c)) V0d) V24x))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V3a) V1c) V19x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2b) V1c) V19x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F9 V3a) V2b)) V1c) V19x))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V3a))) (= (or ((_let_1 ((((F8 V1c) V0d) V3a) V2b)) V14x) (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1c) V0d) V14x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F7 V3a) V0d)) V2b) V14x))) ((_let_1 (((F6 V2b) V1c) V0d)) V14x)))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V3a))) (= (or (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F4 V3a) V1c)) V2b) V9x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1c) V0d) V9x)) ((_let_1 ((((F5 V0d) V3a) V1c) V2b)) V9x)) ((_let_1 (((F3 V2b) V1c) V0d)) V9x)))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V3a))) (= (or (and (V2b V6x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V6x)) ((_let_1 (((F2 V3a) V1c) V2b)) V6x)) ((_let_1 ((F1 V2b) V1c)) V6x)))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V3a))) (= ((_let_1 ((F0 V2b) V1c)) V4x) (or ((_let_1 V2b) V4x) ((_let_1 V1c) V4x)))))))))))))))))))))))))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V7t) (V1a V7t)) (((F2 V1a) V0b) V7t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (((F1 V1a) V0b) V5t) (and (V1a V5t) (V0b V5t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ENEXT V0b))) (let ((_let_2 (mono_2Ec_2ETemporal__Logic_2ENEXT V1a))) (and (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F1 V1a) V0b)) V4x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V4x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V4x)))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a)) (mono_2Ec_2ETemporal__Logic_2EALWAYS _let_2)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a)) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL _let_2)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL _let_2) _let_1)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESWHEN _let_2) _let_1)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EWHEN _let_2) _let_1)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a)) V1a) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1a)) V1a) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V8x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V8x) (_let_1 V8x))))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a))) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V9x) (_let_1 V9x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V9x)))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V14x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V14x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V14x)) (_let_1 V14x))))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V15x) (and (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V15x)) (or (_let_1 V15x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V15x)))))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V13x) (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V13x) (and (_let_1 V13x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V13x)))))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b))) (= (and (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V12x) (_let_1 V12x)) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V12x))) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V12x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V11x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V11x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V11x)) (_let_1 V11x))))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b))) (= (or (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V10x) (_let_1 V10x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V10x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V10x)))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EBEFORE _let_2) _let_1)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EUNTIL _let_2) _let_1)) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE _let_2) _let_1)) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0b) V6x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V6x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F2 V1a) V0b)) V6x))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT (F0 V1a)) V2x) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V2x)))))))))))) (forall ((F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F7 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V20t)) ((F6 V1a) V20t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= ((F5 V0b) V17t) (not (V0b V17t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V11t)) ((F3 V0b) V11t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((F2 V0b) V8t) (not (V0b V8t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V5t)) ((F1 V1a) V5t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V14t) (or (not (V0b V14t)) (not (V1a V14t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V9t)) (not (V1a V9t))) (((F8 V1a) V0b) V9t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (((F10 V1a) V0b) V15t) (and (not (V1a V15t)) (V0b V15t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (((F11 V1a) V0b) V18t) (and (V1a V18t) (not (V0b V18t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F9 V1a) V0b) V12t) (and (V1a V12t) (V0b V12t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) F0) V2x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F2 V0b)) ((F8 V1a) V0b)) V7x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) V7x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL ((F4 V1a) V0b)) ((F10 V1a) V0b)) V13x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) V13x))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) V19x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F6 V1a)) V0b) V19x)))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) V16x) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F5 V0b)) ((F11 V1a) V0b)) V16x))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) V10x) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F3 V0b)) ((F9 V1a) V0b)) V10x))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F1 V1a)) F7) V4x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V4x)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V0a) V1b) V2t0) (or (forall ((V3t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V3t) V2t0) (not (V1b V3t)))) (exists ((V4delta mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V4delta) V2t0) (V1b V4delta) (forall ((V5t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V5t) V2t0) ((mono_2Ec_2Eprim__rec_2E_3C V4delta) V5t)) (not (V1b V5t)))) (V0a V4delta)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0y (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= (forall ((V13x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V1b V13x))) (= (or (and (V2a V13x) _let_1) (and (not _let_1) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0y) V13x))) (V0y V13x)))) (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V1b))) (= (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (or (V1b V15x) (and (V2a V15x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0y) V15x))) (V0y V15x))) (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V1b))) (= (forall ((V17x mono_2Etyop_2Enum_2Enum)) (= (and (or (V2a V17x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0y) V17x)) (not (V1b V17x))) (V0y V17x))) (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V1b))) (= (forall ((V16x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V1b V16x))) (= (V0y V16x) (or (and _let_1 (V2a V16x)) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0y) V16x) (not _let_1)))))) (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V1b))) (= (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= (and (not (V1b V14x)) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0y) V14x) (V2a V14x))) (V0y V14x))) (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V1b))) (= (= V0y ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V1b)) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= (V0y V12x) (or (V1b V12x) (and (V2a V12x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0y) V12x)))))) (= (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (or (V2a V11x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0y) V11x)) (V0y V11x))) (= V0y (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V2a))) (= (= V0y (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V2a)) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (V0y V10x) (and (V2a V10x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0y) V10x))))) (= (or (= V0y ((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b)) (= V0y ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (and (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0y) V9x) (V2a V9x)) (not (V1b V9x))) (V0y V9x)))) (= (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= (V0y V8x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V1b V8x)) (V2a V8x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0y) V8x)))) (or (= V0y ((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b)) (= V0y ((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b)))) (= (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (=> (not (V1b V7x)) (and (V2a V7x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0y) V7x))) (V0y V7x))) (or (= V0y ((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b)) (= V0y ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b)))) (= (or (= V0y (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V2a)) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (V0y V6x) mono_2Ec_2Ebool_2ET))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0y) V5x) (V2a V5x)) (V0y V5x)))) (= (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (and (V2a V3x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0y) V3x)) (V0y V3x))) (or (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (V0y V4x) mono_2Ec_2Ebool_2EF)) (= V0y (mono_2Ec_2ETemporal__Logic_2EALWAYS V2a)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V3s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V3s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (((F7 V2a) V1b) V18t) (or (V2a V18t) (V1b V18t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V16t) (V1b V16t)) (((F6 V2a) V1b) V16t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V36t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V36t) (V1b V36t)) (((F16 V2a) V1b) V36t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V34t mono_2Etyop_2Enum_2Enum)) (= (((F15 V2a) V1b) V34t) (or (V1b V34t) (V2a V34t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V22t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V22t) (V2a V22t)) (((F9 V2a) V1b) V22t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (((F8 V2a) V1b) V20t) (and (V1b V20t) (V2a V20t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F5 V2a) V1b) V14t) (and (V1b V14t) (V2a V14t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V12t) (V2a V12t)) (((F4 V2a) V1b) V12t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V10t) (V1b V10t)) (((F3 V2a) V1b) V10t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V8t) (V2a V8t)) (((F2 V2a) V1b) V8t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V32t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V32t) (V2a V32t)) (((F14 V2a) V1b) V32t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V30t mono_2Etyop_2Enum_2Enum)) (= (((F13 V2a) V1b) V30t) (and (V2a V30t) (V1b V30t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V28t mono_2Etyop_2Enum_2Enum)) (= (((F12 V2a) V1b) V28t) (and (V2a V28t) (V1b V28t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V26t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V26t) (V2a V26t)) (((F11 V2a) V1b) V26t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V24t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V24t) (V1b V24t)) (((F10 V2a) V1b) V24t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (((F1 V2a) V1b) V6t) (and (V1b V6t) (V2a V6t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V4t) (V2a V4t)) (((F0 V2a) V1b) V4t))) (forall ((V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1b) V3x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V3x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V2a) V1b)) V3x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1b) V0c) V9x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V0c) V9x)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN ((F3 V2a) V1b)) V0c) V9x))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL ((F4 V2a) V1b)) V0c) V11x) (and (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V0c) V11x) (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1b) V0c) V11x)))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V0c) V13x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1b) V0c) V13x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F5 V2a) V1b)) V0c) V13x))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EBEFORE V0c))) (= ((_let_1 ((F6 V2a) V1b)) V15x) (and ((_let_1 V1b) V15x) ((_let_1 V2a) V15x))))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESBEFORE V0c))) (= ((_let_1 ((F7 V2a) V1b)) V17x) (and ((_let_1 V2a) V17x) ((_let_1 V1b) V17x))))) (forall ((V21x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT ((F9 V2a) V1b)) V21x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2a) V21x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1b) V21x)))) (forall ((V27x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN ((F12 V2a) V1b)) V0c) V27x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V0c) V27x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1b) V0c) V27x)))) (forall ((V31x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F14 V2a) V1b)) V0c) V31x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V0c) V31x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1b) V0c) V31x)))) (forall ((V35x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0c))) (= (and ((_let_1 V2a) V35x) ((_let_1 V1b) V35x)) ((_let_1 ((F16 V2a) V1b)) V35x)))) (forall ((V33x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V0c))) (= (and ((_let_1 V1b) V33x) ((_let_1 V2a) V33x)) ((_let_1 ((F15 V2a) V1b)) V33x)))) (forall ((V29x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1b) V0c) V29x) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V0c) V29x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL ((F13 V2a) V1b)) V0c) V29x))) (forall ((V25x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN ((F11 V2a) V1b)) V0c) V25x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V0c) V25x) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1b) V0c) V25x)))) (forall ((V23x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS ((F10 V2a) V1b)) V23x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1b) V23x) ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V2a) V23x)))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b) V19x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V19x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F8 V2a) V1b)) V19x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V0c) V7x) (((mono_2Ec_2ETemporal__Logic_2EWHEN V1b) V0c) V7x)) (((mono_2Ec_2ETemporal__Logic_2EWHEN ((F2 V2a) V1b)) V0c) V7x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS ((F1 V2a) V1b)) V5x) (and ((mono_2Ec_2ETemporal__Logic_2EALWAYS V2a) V5x) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1b) V5x)))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F22 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F19 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F17 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F25 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F24 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F21 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F30 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F31 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F23 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F29 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F27 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F28 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F20 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F26 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= ((F7 V1c) V16t) (not (V1c V16t)))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V22t mono_2Etyop_2Enum_2Enum)) (= ((F11 V1c) V22t) (not (V1c V22t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V23t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0d) V23t) (V3a V23t)) (((F12 V3a) V0d) V23t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (or (V3a V17t) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V17t))) (((F8 V3a) V1c) V17t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (or (V2b V7t) (V3a V7t)) (((F1 V3a) V2b) V7t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (((F0 V2b) V1c) V5t) (or (V2b V5t) (V1c V5t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V41t mono_2Etyop_2Enum_2Enum)) (= (((F22 V0d) V2b) V41t) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V41t) (not (V0d V41t))))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V34t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0d V34t)) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V34t))) (((F19 V0d) V1c) V34t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V12t) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1c) V12t)) (((F4 V2b) V1c) V12t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V30t mono_2Etyop_2Enum_2Enum)) (= (((F16 V3a) V2b) V30t) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V30t) (V3a V30t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V9t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V9t)) (((F2 V2b) V1c) V9t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V27t mono_2Etyop_2Enum_2Enum)) (= (((F14 V3a) V2b) V27t) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2b) V27t) (V3a V27t)))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V13t) (V1c V13t)) (((F5 V1c) V2b) V13t))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V10t) (V1c V10t)) (((F3 V1c) V2b) V10t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V31t mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V3a) V31t) (V2b V31t)) (((F17 V2b) V3a) V31t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V28t mono_2Etyop_2Enum_2Enum)) (= (((F15 V2b) V3a) V28t) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V3a) V28t) (V2b V28t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V42t mono_2Etyop_2Enum_2Enum)) (= (((F25 V3a) V0d) V42t) (and (not (V0d V42t)) (V3a V42t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V35t mono_2Etyop_2Enum_2Enum)) (= (((F24 V3a) V0d) V35t) (and (V3a V35t) (not (V0d V35t))))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= ((((F6 V2b) V1c) V0d) V15t) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1c) V0d) V15t) (V2b V15t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V40t mono_2Etyop_2Enum_2Enum)) (= ((((F21 V3a) V2b) V1c) V40t) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2b) V1c) V40t) (V3a V40t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V33t mono_2Etyop_2Enum_2Enum)) (= (and (V3a V33t) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2b) V1c) V33t)) ((((F18 V3a) V2b) V1c) V33t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V21t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V21t) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1c) V0d) V21t)) ((((F10 V2b) V1c) V0d) V21t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V44t mono_2Etyop_2Enum_2Enum)) (= (((F30 V0d) V2b) V44t) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V44t) (not (V0d V44t))))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V45t mono_2Etyop_2Enum_2Enum)) (= (((F31 V3a) V0d) V45t) (and (V3a V45t) (not (V0d V45t))))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V43t mono_2Etyop_2Enum_2Enum)) (= (((((F23 V1c) V0d) V2b) V3a) V43t) (and (V1c V43t) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F30 V0d) V2b)) ((F31 V3a) V0d)) V43t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= (((F29 V3a) V1c) V19t) (and (not (V3a V19t)) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V19t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F29 V3a) V1c)) V2b) V18t) (V0d V18t)) (((((F9 V0d) V3a) V1c) V2b) V18t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V37t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0d V37t)) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V37t))) (((F27 V0d) V1c) V37t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V38t mono_2Etyop_2Enum_2Enum)) (= (and (V3a V38t) (not (V0d V38t))) (((F28 V3a) V0d) V38t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V36t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V36t) (not (V1c V36t)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F27 V0d) V1c)) ((F28 V3a) V0d)) V36t)) (((((F20 V2b) V1c) V0d) V3a) V36t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V25t mono_2Etyop_2Enum_2Enum)) (= (((F26 V3a) V0d) V25t) (and (not (V3a V25t)) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0d) V25t))))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V24t mono_2Etyop_2Enum_2Enum)) (= (((((F13 V1c) V0d) V3a) V2b) V24t) (and (V1c V24t) (not (V0d V24t)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F26 V3a) V0d)) V2b) V24t)))) (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F1 V3a) V2b)) V1c) V6x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2b) V1c) V6x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V3a) V1c) V6x)))) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V3a) ((F2 V2b) V1c)) V8x) (and (not (and (V2b V8x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V8x))) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE (mono_2Ec_2ETemporal__Logic_2ENEXT V3a)) ((F3 V1c) V2b)) V8x) (V3a V8x))))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V3a) ((F4 V2b) V1c)) V11x) (and (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE (mono_2Ec_2ETemporal__Logic_2ENEXT V3a)) ((F5 V1c) V2b)) V11x) (V3a V11x)) (not (and (V2b V11x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1c) V11x)))))) (forall ((V20x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EBEFORE V3a))) (= ((_let_1 (((F10 V2b) V1c) V0d)) V20x) (and ((_let_1 ((((F13 V1c) V0d) V3a) V2b)) V20x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F11 V1c)) V0d) V20x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F12 V3a) V0d)) V2b) V20x)))))) (forall ((V26x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (not (V1c V26x)))) (= (or (and _let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2b) V26x) (V3a V26x)) (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F15 V2b) V3a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1c)) V26x) _let_1)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F14 V3a) V2b)) V1c) V26x)))) (forall ((V32x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE (((F18 V3a) V2b) V1c)) V0d) V32x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((((F20 V2b) V1c) V0d) V3a)) V0d) V32x) (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F19 V0d) V1c)) ((F24 V3a) V0d)) V32x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2b) V1c) V32x))))) (forall ((V39x mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((((F23 V1c) V0d) V2b) V3a)) V0d) V39x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2b) V1c) V39x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F22 V0d) V2b)) ((F25 V3a) V0d)) V39x))) (((mono_2Ec_2ETemporal__Logic_2EBEFORE (((F21 V3a) V2b) V1c)) V0d) V39x))) (forall ((V29x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (not (V1c V29x)))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F16 V3a) V2b)) V1c) V29x) (or (and _let_1 (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F17 V2b) V3a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1c)) V29x)) (and _let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V29x) (V3a V29x)))))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EBEFORE V3a))) (= ((_let_1 (((F6 V2b) V1c) V0d)) V14x) (and ((_let_1 ((((F9 V0d) V3a) V1c) V2b)) V14x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F8 V3a) V1c)) V2b) V14x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE (F7 V1c)) V0d) V14x)))))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EBEFORE V3a))) (= (and ((_let_1 V1c) V4x) ((_let_1 V2b) V4x)) ((_let_1 ((F0 V2b) V1c)) V4x))))))))))))))))))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 (_let_2 _let_1))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_2 (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0a) V1t0) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1t0) (V0a (mono_2Ec_2Eprim__rec_2EPRE V1t0))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) ((tyop_2Emin_2Efun _let_1) _let_3)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_4) _let_1))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_3))) (let ((_let_10 (s _let_3))) (= (_let_10 ((c_2Epair_2Epair__CASE_2E2 _let_8) _let_6)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epair_2Epair__CASE_2E0)) _let_8))) _let_6)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (tyop_2Epair_2Eprod A_27a))) (let ((_let_6 (_let_2 (tyop_2Eoption_2Eoption (_let_5 _let_1))))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 (_let_5 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_8) _let_1))))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_6) _let_12))) (let ((_let_14 (s _let_11))) (= (_let_14 (((c_2EDecode_2Edecode__prod_2E3 _let_10) _let_7) _let_4)) (_let_14 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) c_2EDecode_2Edecode__prod_2E0)) _let_10))) _let_7))) _let_4)))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_446 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_446 c_2Eoption_2Eoption__CASE_2E0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EDecode_2Ewf__decoder_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EEncode_2Eencode__sum_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EEncode_2Eencode__sum_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_5 (((c_2Earithmetic_2Enum__CASE_2E3 _let_7) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) c_2Earithmetic_2Enum__CASE_2E0)) _let_7))) _let_6))) _let_4))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2EDecode_2Eenc2dec_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EDecode_2Eenc2dec_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u) (V2x_2E0 u) (V3l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_2))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) V1d_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_4))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_7) _let_5))) (= (= (_let_9 ((app_2E2 _let_5) (_let_6 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3l)))) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_1) (_let_6 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_7) _let_1))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_1))) V3l)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X2)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EDecode_2Edecode__option_2E3 _let_8) _let_5) _let_2)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EDecode_2Edecode__option_2E0)) _let_8))) _let_5))) _let_2)))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EEVERY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2EEVERY_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2EEncode_2Elift__blist_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2EEncode_2Elift__blist_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) V1d_2E0))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_8) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_8) _let_7)))) (= (_let_6 ((app_2E2 _let_7) (_let_2 ((c_2EDecode_2Edec2enc_2E2 _let_7) _let_3)))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (= (_let_445 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_445 c_2Eoption_2ENONE_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X2)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EDecode_2Edecode__list_2E3 _let_8) _let_5) _let_2)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EDecode_2Edecode__list_2E0)) _let_8))) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Epair_2Eprod A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (_let_2 A_27b)) _let_1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_3)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s _let_3))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3x_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_5 (s _let_1))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((s (_let_6 _let_1)) V1e_2E0))) (let ((_let_8 ((s (_let_6 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 ((s A_27a) (c_2Epair_2EFST_2E1 _let_3)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EEncode_2Ewf__encoder_2E2 _let_8) _let_7))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_8) _let_9))) (= V2l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 _let_7) _let_9)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 (c_2Epair_2ESND_2E1 _let_3)))))) (= (_let_4 (((c_2EDecode_2Eenc2dec_2E3 _let_8) _let_7) (_let_5 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s (_let_2 ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (F4_2E0 u) (F2_2E0 u) (F3_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V11x_2E0 u) (V12t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V12t_27)))) (let ((_let_3 ((s A_27b) V11x_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) _let_1))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_8)) F4_2E0)) _let_3))) _let_2)) (_let_7 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 ((s _let_4) (c_2Esum_2EINR_2E1 _let_3))) _let_2)))))))))))))) (=> (forall ((V10v_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_4 ((s _let_3) V10v_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) F2_2E0)) _let_4)) (_let_5 ((c_2Epair_2Epair__CASE_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun _let_1) _let_2))) F4_2E0)))))))))) (=> (forall ((V8x_2E0 u) (V9t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V9t_27)))) (let ((_let_3 ((s A_27a) V8x_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) _let_1))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) F3_2E0)) _let_3))) _let_2)) (_let_7 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 ((s _let_4) (c_2Esum_2EINL_2E1 _let_3))) _let_2)))))))))))))) (=> (forall ((V7v_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((s _let_3) V7v_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) F1_2E0)) _let_4)) (_let_5 ((c_2Epair_2Epair__CASE_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2))) F3_2E0)))))))))) (=> (forall ((V4d1_2E0 u) (V3d2_2E0 u) (V5v1 Bool) (V6t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_4 (s _let_2))) (let ((_let_5 (_let_4 c_2Eoption_2ENONE_2E0))) (let ((_let_6 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V6t)))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) V3d2_2E0))) (let ((_let_11 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_12 (tyop_2Eoption_2Eoption _let_11))) (let ((_let_13 (_let_8 _let_12))) (let ((_let_14 ((s _let_13) V4d1_2E0))) (let ((_let_15 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V5v1)))) (let ((_let_16 (_let_8 _let_2))) (let ((_let_17 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_16))) (let ((_let_18 ((tyop_2Emin_2Efun _let_9) _let_17))) (= (_let_4 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_13) _let_18)) F0_2E0)) _let_14))) _let_10))) _let_15))) _let_6)) (_let_4 (((c_2Ebool_2ECOND_2E3 _let_15) (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_12) ((app_2E2 _let_14) _let_6))) _let_5) ((s ((tyop_2Emin_2Efun _let_11) _let_2)) F1_2E0)))) (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_7) ((app_2E2 _let_10) _let_6))) _let_5) ((s ((tyop_2Emin_2Efun _let_3) _let_2)) F2_2E0))))))))))))))))))))))))) (forall ((V0p2_2E0 u) (V1p1_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V3d2_2E0 u) (V4d1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_4 ((s _let_3) V3d2_2E0))) (let ((_let_5 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_6 ((s _let_5) V4d1_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_8 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_1)))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 _let_8)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (let ((_let_12 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (let ((_let_13 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0p2_2E0))) (let ((_let_14 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p1_2E0))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2EDecode_2Ewf__decoder_2E2 _let_13) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2EDecode_2Ewf__decoder_2E2 _let_14) _let_6)))) (= (_let_11 ((((c_2EDecode_2Edecode__sum_2E4 ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__sum_2E2 _let_14) _let_13))) _let_6) _let_4) _let_12)) (_let_11 (((c_2Elist_2Elist__CASE_2E3 _let_12) (_let_11 c_2Eoption_2ENONE_2E0)) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_4)))))))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V3x_2E0 u) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V1e_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) _let_2))) (let ((_let_9 (s (tyop_2Eoption_2Eoption _let_8)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_6) _let_4))) (= (= (_let_9 (((c_2EDecode_2Eenc2dec_2E3 _let_6) _let_4) (_let_5 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_1) (_let_5 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4t))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) _let_1))) (= V2l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 _let_4) _let_1)))) V4t))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2d1_2E0 u) (V3d2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) V3d2_2E0))) (let ((_let_4 (tyop_2Epair_2Eprod A_27a))) (let ((_let_5 ((s (_let_2 (tyop_2Eoption_2Eoption (_let_4 _let_1)))) V2d1_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_8 (_let_4 A_27b))) (let ((_let_9 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__prod_2E2 _let_7) _let_6)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EDecode_2Ewf__decoder_2E2 _let_7) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EDecode_2Ewf__decoder_2E2 _let_9) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_8) _let_1)))) (((c_2EDecode_2Edecode__prod_2E3 _let_9) _let_5) _let_3))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EEVERY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EEVERY_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2d1_2E0 u) (V3d2_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) V4x_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_3)))) V3d2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3)))) V2d1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (s _let_3))) (let ((_let_10 ((s (_let_6 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_11 ((s (_let_8 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EDecode_2Ewf__decoder_2E2 _let_10) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2EEncode_2Elift__sum_2E3 _let_11) _let_10) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EDecode_2Ewf__decoder_2E2 _let_11) _let_7)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 ((c_2EDecode_2Edec2enc_2E2 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3)))) (((c_2EDecode_2Edecode__sum_2E3 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__sum_2E2 _let_11) _let_10))) _let_7) _let_5))) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 (((c_2EEncode_2Eencode__sum_2E3 ((s (_let_8 _let_3)) (c_2EDecode_2Edec2enc_2E1 _let_7))) ((s (_let_6 _let_3)) (c_2EDecode_2Edec2enc_2E1 _let_5))) _let_2)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X2)))) (let ((_let_3 (tyop_2EEncode_2Etree A_27a))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) _let_1))))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_3))) (let ((_let_8 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_1)))) (let ((_let_11 (_let_4 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_10))) (= (_let_13 (((c_2EDecode_2Edecode__list_2E3 _let_9) _let_6) _let_2)) (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2EDecode_2Edecode__list_2E0)) _let_9))) _let_6))) _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_2 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((F5 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F4 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F3 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F2 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V3h Bool) (V6n mono_2Etyop_2Enum_2Enum) (V7t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F5 V3h) V6n) V7t_27) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V6n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V3h) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))) V7t_27)))) (=> (forall ((V3h Bool) (V5v mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F4 V3h) V5v) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5v) (F5 V3h)))) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V3h Bool) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F0 V1m) V3h) V4t) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edec__bnum ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1m))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V4t)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F4 V3h)))) (=> (forall ((V10h Bool) (V13n mono_2Etyop_2Enum_2Enum) (V14t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F3 V10h) V13n) V14t_27) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V13n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V10h) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))) V14t_27)))) (=> (forall ((V10h Bool) (V12v mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F2 V10h) V12v) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V12v) (F3 V10h)))) (=> (forall ((V8m mono_2Etyop_2Enum_2Enum) (V10h Bool) (V11t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F1 V8m) V10h) V11t) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edec__bnum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V8m))) V11t)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F2 V10h)))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edec__bnum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1m))) V2l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F0 V1m)))) (forall ((V8m mono_2Etyop_2Enum_2Enum) (V9l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edec__bnum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V8m))) V9l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V9l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F1 V8m)))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edec__bnum mono_2Ec_2Enum_2E0) V0l) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Enum_2E0) V0l)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EEncode_2Elift__prod_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EEncode_2Elift__prod_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Elift__option_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EEncode_2Elift__option_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2EEncode_2Etree A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_444 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Eone_2Eone)) (_let_444 c_2EDecode_2Ewf__decoder_2E0)) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3x_2E0 u) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0)) _let_1))) (not (= V2l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V1e_2E0)) _let_1)))) V4t)))))))) (= (_let_2 (((c_2EDecode_2Eenc2dec_2E3 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0)) ((s (_let_3 _let_1)) V1e_2E0)) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (_let_2 c_2Eoption_2ENONE_2E0))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2EEncode_2ENode_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2EEncode_2ENode_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))))) (let ((_let_3 (_let_2 V1d_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0p_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 _let_5) _let_3))) (= (_let_2 ((c_2EDecode_2Eenc2dec_2E2 _let_5) ((s (_let_4 _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3)))) _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V0p (-> Bool Bool)) (V2h Bool) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F0 V0p) V2h) V3t) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p V2h)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2h) V3t))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (forall ((V0p (-> Bool Bool)) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edecode__bool V0p) V1l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F0 V0p)))))) (= (_let_443 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Emin_2Ebool)) (_let_443 c_2EDecode_2Edec2enc_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6x_2E0 u) (V9xs_2E0 u) (V10t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V10t_27)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V9xs_2E0))) (let ((_let_6 ((s A_27a) V6x_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_11)) F4_2E0)) _let_6))) _let_5))) _let_2)) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_7) ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) _let_2))))))))))))))))) (=> (forall ((V6x_2E0 u) (V8v_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s _let_4) V8v_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_5))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F3_2E0)) _let_1))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F4_2E0)) _let_1)))))))))))))))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum) (V0p_2E0 u) (V3d_2E0 u) (V6x_2E0 u) (V7t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) _let_5))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (s _let_5))) (let ((_let_9 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7t)))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_12 ((s _let_11) V3d_2E0))) (let ((_let_13 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_14 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_15 ((s _let_14) V0p_2E0))) (let ((_let_16 (_let_10 _let_5))) (let ((_let_17 (_let_7 _let_16))) (let ((_let_18 ((tyop_2Emin_2Efun _let_11) _let_17))) (let ((_let_19 ((tyop_2Emin_2Efun _let_14) _let_18))) (= (_let_8 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_19)) F2_2E0)) _let_13))) _let_15))) _let_12))) _let_1))) _let_9)) (_let_8 (((c_2Eoption_2Eoption__CASE_2E3 (_let_8 ((((c_2EDecode_2Edecode__blist_2E4 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_13) _let_15))) _let_13) _let_12) _let_9))) (_let_8 c_2Eoption_2ENONE_2E0)) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F3_2E0)) _let_1))))))))))))))))))))))))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum) (V0p_2E0 u) (V3d_2E0 u) (V5v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_5 ((s _let_4) V3d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_11 (_let_6 (_let_3 _let_10)))) (let ((_let_12 (tyop_2Emin_2Efun _let_4))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun _let_7))) (let ((_let_15 (_let_14 _let_13))) (let ((_let_16 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_17 ((s _let_2) V5v1_2E0))) (let ((_let_18 (s _let_10))) (let ((_let_19 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_20 (_let_12 _let_19))) (let ((_let_21 (_let_14 _let_20))) (= (_let_18 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_16 _let_21)) F1_2E0)) _let_9))) _let_8))) _let_5))) _let_17)) (_let_18 ((c_2Epair_2Epair__CASE_2E2 _let_17) ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_16 _let_15)) F2_2E0)) _let_9))) _let_8))) _let_5))))))))))))))))))))))))))) (=> (forall ((V3d_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V0p_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V3d_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun _let_7))) (let ((_let_15 (_let_14 _let_13))) (let ((_let_16 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_17 (s _let_10))) (let ((_let_18 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (let ((_let_19 (_let_16 _let_10))) (let ((_let_20 (_let_14 _let_19))) (let ((_let_21 (_let_4 _let_20))) (= (_let_17 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_12 _let_21)) F0_2E0)) _let_6))) _let_18))) _let_8))) _let_9)) (_let_17 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_3) ((app_2E2 _let_6) _let_18))) (_let_17 c_2Eoption_2ENONE_2E0)) ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_16 _let_15)) F1_2E0)) _let_9))) _let_8))) _let_6))))))))))))))))))))))))))) (forall ((V0p_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V3d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0p_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (let ((_let_5 (tyop_2Emin_2Efun _let_3))) (let ((_let_6 (_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3))))) (let ((_let_7 ((s _let_6) V3d_2E0))) (let ((_let_8 (tyop_2Elist_2Elist A_27a))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) _let_3))) (let ((_let_10 (tyop_2Eoption_2Eoption _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_1) _let_11))) (let ((_let_13 (_let_5 _let_12))) (let ((_let_14 (s _let_10))) (let ((_let_15 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 _let_2) _let_7))) (= (_let_14 ((((c_2EDecode_2Edecode__blist_2E4 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_15) _let_2))) _let_15) _let_7) _let_4)) (_let_14 (((c_2Earithmetic_2Enum__CASE_2E3 _let_15) (_let_14 (c_2Eoption_2ESOME_2E1 ((s _let_9) ((c_2Epair_2E_2C_2E2 ((s _let_8) c_2Elist_2ENIL_2E0)) _let_4))))) ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_13)) F0_2E0)) _let_7))) _let_4))) _let_2)))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_3))) _let_3))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (V0p_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V2d_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m)))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (tyop_2Emin_2Efun _let_5))) (let ((_let_7 ((s (_let_6 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_8 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))))) (= (_let_8 (((c_2EDecode_2Edecode__blist_2E3 _let_7) _let_4) _let_3)) (_let_8 ((c_2EDecode_2Eenc2dec_2E2 _let_7) ((s (_let_6 _let_1)) ((c_2EEncode_2Eencode__blist_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2d1_2E0 u) (V3d2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) V3d2_2E0))) (let ((_let_4 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V2d1_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_8 ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__sum_2E2 _let_6) _let_5)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_8) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_1)))) (((c_2EDecode_2Edecode__sum_2E3 _let_8) _let_4) _let_3)))))))))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_6 (s _let_2))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 ((c_2EDecode_2Edec2enc_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EDecode_2Edec2enc_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Eenc2dec_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6x_2E0 u) (V9xs_2E0 u) (V10t_27_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V10t_27_27)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V9xs_2E0))) (let ((_let_6 ((s A_27a) V6x_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_11)) F4_2E0)) _let_6))) _let_5))) _let_2)) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_7) ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) _let_2))))))))))))))))) (=> (forall ((V6x_2E0 u) (V8v_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s _let_4) V8v_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_5))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F3_2E0)) _let_1))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F4_2E0)) _let_1)))))))))))))))) (=> (forall ((V0p_2E0 u) (V2d_2E0 u) (V6x_2E0 u) (V7t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) _let_5))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (s _let_5))) (let ((_let_9 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7t_27)))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_12 ((s _let_11) V2d_2E0))) (let ((_let_13 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_14 ((s _let_13) V0p_2E0))) (let ((_let_15 (_let_10 _let_5))) (let ((_let_16 (_let_7 _let_15))) (let ((_let_17 ((tyop_2Emin_2Efun _let_11) _let_16))) (= (_let_8 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_13) _let_17)) F2_2E0)) _let_14))) _let_12))) _let_1))) _let_9)) (_let_8 (((c_2Eoption_2Eoption__CASE_2E3 (_let_8 (((c_2EDecode_2Edecode__list_2E3 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_14))) _let_12) _let_9))) (_let_8 c_2Eoption_2ENONE_2E0)) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F3_2E0)) _let_1))))))))))))))))))))))) (=> (forall ((V0p_2E0 u) (V2d_2E0 u) (V5v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_5 ((s _let_4) V2d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_10 (_let_6 (_let_3 _let_9)))) (let ((_let_11 (tyop_2Emin_2Efun _let_4))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (tyop_2Emin_2Efun _let_7))) (let ((_let_14 ((s _let_2) V5v1_2E0))) (let ((_let_15 (s _let_9))) (let ((_let_16 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_17 (_let_11 _let_16))) (= (_let_15 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_13 _let_17)) F1_2E0)) _let_8))) _let_5))) _let_14)) (_let_15 ((c_2Epair_2Epair__CASE_2E2 _let_14) ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_13 _let_12)) F2_2E0)) _let_8))) _let_5))))))))))))))))))))))) (=> (forall ((V2d_2E0 u) (V0p_2E0 u) (V3v2 Bool) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4t)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 ((s _let_10) V2d_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_13 ((s _let_12) V0p_2E0))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_5))) (let ((_let_15 (tyop_2Emin_2Efun _let_10))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 (tyop_2Emin_2Efun _let_12))) (let ((_let_18 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V3v2)))) (let ((_let_19 (_let_9 _let_5))) (let ((_let_20 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_19))) (let ((_let_21 (_let_17 _let_20))) (= (_let_6 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_15 _let_21)) F0_2E0)) _let_11))) _let_13))) _let_18))) _let_2)) (_let_6 (((c_2Ebool_2ECOND_2E3 _let_18) (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_8) ((app_2E2 _let_11) _let_2))) (_let_6 c_2Eoption_2ENONE_2E0)) ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_17 _let_16)) F1_2E0)) _let_13))) _let_11))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s _let_3) c_2Elist_2ENIL_2E0)) _let_2))))))))))))))))))))))))))))) (forall ((V0p_2E0 u) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0p_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3))))) (let ((_let_6 ((s _let_5) V2d_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_3)))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_4 _let_8)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_11 (s _let_8))) (let ((_let_12 ((s _let_3) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1l)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 _let_2) _let_6))) (= (_let_11 (((c_2EDecode_2Edecode__list_2E3 ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_2))) _let_6) _let_12)) (_let_11 (((c_2Elist_2Elist__CASE_2E3 _let_12) (_let_11 c_2Eoption_2ENONE_2E0)) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_2))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V1e_2E0))) (let ((_let_4 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EEncode_2Ewf__encoder_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EDecode_2Ewf__decoder_2E2 _let_4) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_4) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Eenc2dec_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5)))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2EDecode_2Ewf__decoder_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Eenc2dec_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5)))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0p (-> mono_2Etyop_2Eone_2Eone Bool))) ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Eone_2Eone V0p) (mono_2Ec_2EDecode_2Edecode__unit V0p))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1d1_2E0 u) (V2d2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) V2d2_2E0))) (let ((_let_4 (tyop_2Epair_2Eprod A_27a))) (let ((_let_5 ((s (_let_2 (tyop_2Eoption_2Eoption (_let_4 _let_1)))) V1d1_2E0))) (let ((_let_6 (_let_4 A_27b))) (let ((_let_7 (tyop_2Emin_2Efun _let_6))) (let ((_let_8 ((s (_let_7 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))))) (= (_let_9 (((c_2EDecode_2Edecode__prod_2E3 _let_8) _let_5) _let_3)) (_let_9 ((c_2EDecode_2Eenc2dec_2E2 _let_8) ((s (_let_7 _let_1)) ((c_2EEncode_2Eencode__prod_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_5))) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3))))))))))))))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V4n mono_2Etyop_2Enum_2Enum) (V5t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F1 V0p) V4n) V5t) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p V4n)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4n) V5t))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V3v mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F0 V0p) V3v) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3v) (F1 V0p)))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (=> ((mono_2Ec_2EEncode_2Ewf__pred__bnum V1m) V0p) (= (((mono_2Ec_2EDecode_2Edecode__bnum V1m) V0p) V2l) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edec__bnum V1m) V2l)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F0 V0p)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s (_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0B2_2E0 u) (V1B1_2E0 u) (V2A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0B2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1B1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 (c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2A_2E0)))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_8 (_let_3 _let_7))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption _let_8))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) (_let_6 _let_4))) _let_2))) ((s ((tyop_2Emin_2Efun (_let_5 _let_7)) tyop_2Emin_2Ebool)) (_let_6 ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) V1p) ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Enum_2Enum V1p) ((mono_2Ec_2EDecode_2Edecode__bnum V0m) V1p)))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_4 ((c_2Epair_2Epair__CASE_2E2 ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_3))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V1)))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EDecode_2Ewf__decoder_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EEncode_2Ewf__encoder_2E2 _let_4) ((s (_let_3 _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_2)))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2EDecode_2Edec2enc_2E2 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V1)))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u) (V2x_2E0 u) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) V1d_2E0))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_8) _let_3)))) (= (_let_6 ((app_2E2 _let_7) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 ((c_2EDecode_2Edec2enc_2E2 _let_7) _let_3)))) V3t))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3t)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (=> V0P (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))) (exists ((V3x_2E0 u)) (=> V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2n mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (=> (= ((mono_2Ec_2EDecode_2Edec__bnum V0m) V1l) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2n) V3t))) ((mono_2Ec_2Eprim__rec_2E_3C V2n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0m)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0p (-> Bool Bool)) (V1x Bool)) (=> (V0p V1x) (= ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Emin_2Ebool (mono_2Ec_2EDecode_2Edecode__bool V0p)) V1x) (mono_2Ec_2EEncode_2Eencode__bool V1x)))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 _let_3)) ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_3)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (= (_let_442 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Enum_2Enum)) (_let_442 c_2EDecode_2Eenc2dec_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) (_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6x_2E0 u) (V9y_2E0 u) (V10t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V10t_27)))) (let ((_let_3 ((s A_27b) V9y_2E0))) (let ((_let_4 ((s A_27a) V6x_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) _let_1))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_10)) F3_2E0)) _let_4))) _let_3))) _let_2)) (_let_8 (c_2Eoption_2ESOME_2E1 ((s _let_6) ((c_2Epair_2E_2C_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) _let_3))) _let_2)))))))))))))))) (=> (forall ((V6x_2E0 u) (V8v_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_2)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun _let_2) _let_3)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27b) _let_2))) (let ((_let_7 ((s _let_6) V8v_2E0))) (let ((_let_8 (s _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_3))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_5 _let_9)) F2_2E0)) _let_1))) _let_7)) (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_7) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F3_2E0)) _let_1))))))))))))))) (=> (forall ((V3d2_2E0 u) (V6x_2E0 u) (V7t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_2)))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s _let_3))) (let ((_let_8 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7t)))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 ((s _let_11) V3d2_2E0))) (let ((_let_13 (_let_10 _let_3))) (let ((_let_14 (_let_6 _let_13))) (= (_let_7 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_14)) F1_2E0)) _let_12))) _let_1))) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 _let_12) _let_8))) (_let_7 c_2Eoption_2ENONE_2E0)) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F2_2E0)) _let_1)))))))))))))))))))) (=> (forall ((V3d2_2E0 u) (V5v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_4 ((s _let_3) V3d2_2E0))) (let ((_let_5 (tyop_2Epair_2Eprod A_27a))) (let ((_let_6 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (_let_5 A_27b)) _let_1)))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) (_let_2 _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_5 _let_1))) (let ((_let_10 ((s _let_9) V5v1_2E0))) (let ((_let_11 (s _let_6))) (let ((_let_12 ((tyop_2Emin_2Efun _let_9) _let_6))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_8 _let_12)) F0_2E0)) _let_4))) _let_10)) (_let_11 ((c_2Epair_2Epair__CASE_2E2 _let_10) ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F1_2E0)) _let_4)))))))))))))))))) (forall ((V0p2_2E0 u) (V1p1_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V3d2_2E0 u) (V4d1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_4 ((s _let_3) V3d2_2E0))) (let ((_let_5 (tyop_2Epair_2Eprod A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) _let_7))) (let ((_let_10 (s _let_7))) (let ((_let_11 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (let ((_let_12 (tyop_2Eoption_2Eoption _let_8))) (let ((_let_13 ((s (_let_2 _let_12)) V4d1_2E0))) (let ((_let_14 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0p2_2E0))) (let ((_let_15 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p1_2E0))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((c_2EDecode_2Ewf__decoder_2E2 _let_15) _let_13))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((c_2EDecode_2Ewf__decoder_2E2 _let_14) _let_4)))) (= (_let_10 ((((c_2EDecode_2Edecode__prod_2E4 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__prod_2E2 _let_15) _let_14))) _let_13) _let_4) _let_11)) (_let_10 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_12) ((app_2E2 _let_13) _let_11))) (_let_10 c_2Eoption_2ENONE_2E0)) ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F0_2E0)) _let_4)))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__list_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Eencode__list_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum Bool)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2EEncode_2Etree A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Edec2enc_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V1)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EEncode_2Elift__blist_2E3 _let_5) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) c_2EEncode_2Elift__blist_2E0)) _let_5))) _let_4))) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2d_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V3l_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3)))) V2d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m)))) (let ((_let_8 (s _let_3))) (let ((_let_9 ((s (_let_6 tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2EEncode_2Elift__blist_2E3 _let_7) _let_9) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EDecode_2Ewf__decoder_2E2 _let_9) _let_5)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_8 ((c_2EDecode_2Edec2enc_2E2 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3)))) (((c_2EDecode_2Edecode__blist_2E3 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_7) _let_9))) _let_7) _let_5))) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_8 (((c_2EEncode_2Eencode__blist_2E3 _let_7) ((s (_let_6 _let_3)) (c_2EDecode_2Edec2enc_2E1 _let_5))) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 (((c_2EEncode_2Eencode__prod_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EEncode_2Eencode__prod_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2EEncode_2Etree A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((V0p (-> mono_2Etyop_2Eone_2Eone Bool))) (= (mono_2Ec_2EDecode_2Edecode__unit V0p) ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Eone_2Eone V0p) mono_2Ec_2EEncode_2Eencode__unit))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V5x_2E0 u) (V2s_2E0 u) (V0f_2E0 u) (V1A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V2s_2E0))) (let ((_let_4 ((s A_27a) V5x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1A_2E0))) (let ((_let_8 (_let_1 A_27b))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_2) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_1 _let_12)) F1_2E0)) _let_4))) _let_3))) _let_9))) _let_7))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_9) _let_4))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))))))))))))))))) (=> (forall ((V2s_2E0 u) (V0f_2E0 u) (V1A_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V2s_2E0))) (let ((_let_8 ((s A_27a) V5x_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (tyop_2Emin_2Efun _let_4))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (tyop_2Emin_2Efun _let_6))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_16 (s _let_15))) (let ((_let_17 (_let_3 _let_15))) (let ((_let_18 (_let_9 _let_17))) (let ((_let_19 (_let_11 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_13 _let_19)) F0_2E0)) _let_7))) _let_5))) _let_2))) _let_8)) (_let_16 ((c_2Epair_2E_2C_2E2 _let_8) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_3 _let_14)) F1_2E0)) _let_8))) _let_7))) _let_5))) _let_2))))))))))))))))))))))))) (forall ((V0f_2E0 u) (V1A_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Epred__set_2EFINITE_2E1 _let_2))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Epred__set_2EFINITE_2E1 (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) (_let_6 V2s_2E0)))) ((s _let_4) V0f_2E0)))) _let_2)))))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EDecode_2Ewf__decoder_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V2d_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_4) _let_5)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_7) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))) (((c_2EDecode_2Edecode__blist_2E3 _let_7) _let_4) _let_3))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0p (-> Bool Bool))) (= (mono_2Ec_2EDecode_2Edecode__bool V0p) ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Emin_2Ebool V0p) mono_2Ec_2EEncode_2Eencode__bool))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((F5 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F2 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F4 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F3 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V9v mono_2Etyop_2Enum_2Enum) (V10t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= ((F5 V9v) V10t_27) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A _let_1) V9v)) _let_1)) V10t_27))))) (=> (forall ((V8v1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (F2 V8v1) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V8v1) F5))) (=> (forall ((V6v mono_2Etyop_2Enum_2Enum) (V7t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((F4 V6v) V7t_27) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V6v)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V7t_27)))) (=> (forall ((V5v1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (F3 V5v1) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5v1) F4))) (=> (forall ((V3v8 Bool) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((F1 V3v8) V4t) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V3v8) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Enum_2E0) V4t))) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edecode__num (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2ET)) V4t)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) F3)))) (=> (forall ((V1v4 Bool) (V2t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((F0 V1v4) V2t_27) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1v4) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2t_27) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) F1)) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edecode__num (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2ET)) V2t_27)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) F2)))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edecode__num (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2ET)) V0l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) F0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_3 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (= mono_2Ec_2EASCIInumbers_2Enum__from__dec__string ((mono_2Ec_2EASCIInumbers_2Es2n _let_197) mono_2Ec_2EASCIInumbers_2EUNHEX)) (= mono_2Ec_2EASCIInumbers_2Enum__to__dec__string ((mono_2Ec_2EASCIInumbers_2En2s _let_197) mono_2Ec_2EASCIInumbers_2EHEX)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2EASCIInumbers_2EHEX V0n)) V0n))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_3 ((c_2Erelation_2EWFREC_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_3 ((c_2Erelation_2EWFREC_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Estring_2Echar)) (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 tyop_2Enum_2Enum)) (_let_2 tyop_2Estring_2Echar)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2EASCIInumbers_2Enum__from__oct__string) mono_2Ec_2EASCIInumbers_2Enum__to__oct__string) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Ecombin_2EI_2E1 (_let_1 (i_mono_2Etyop_2Estring_2Echar V0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F20 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F17 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F23 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F22 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F19 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F28 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F29 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F21 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F26 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F27 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F25 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F24 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V28t mono_2Etyop_2Enum_2Enum)) (= (((F14 V3a) V2b) V28t) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V28t) (V3a V28t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V25t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2b) V25t) (V3a V25t)) (((F12 V3a) V2b) V25t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V39t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V39t) (V0d V39t)) (((F20 V0d) V2b) V39t))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V32t mono_2Etyop_2Enum_2Enum)) (= (((F17 V0d) V1c) V32t) (or (V0d V32t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V32t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V29t mono_2Etyop_2Enum_2Enum)) (= (((F15 V2b) V3a) V29t) (or (V2b V29t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V3a) V29t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V26t mono_2Etyop_2Enum_2Enum)) (= (((F13 V2b) V3a) V26t) (or (V2b V26t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V3a) V26t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (or (V1c V5t) (V2b V5t)) (((F0 V2b) V1c) V5t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V40t mono_2Etyop_2Enum_2Enum)) (= (and (not (V3a V40t)) (not (V0d V40t))) (((F23 V3a) V0d) V40t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V33t mono_2Etyop_2Enum_2Enum)) (= (((F22 V3a) V0d) V33t) (and (not (V3a V33t)) (not (V0d V33t))))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (((F3 V2b) V1c) V10t) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1c) V10t) (V2b V10t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V7t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V7t)) (((F1 V2b) V1c) V7t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F6 V3a) V1c) V14t) (and (V3a V14t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V14t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= (and (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0d) V19t)) (V3a V19t)) (((F9 V3a) V0d) V19t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V23t mono_2Etyop_2Enum_2Enum)) (= (((F11 V3a) V2b) V23t) (and (V2b V23t) (V3a V23t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V31t mono_2Etyop_2Enum_2Enum)) (= (or (V3a V31t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2b) V1c) V31t)) ((((F16 V3a) V2b) V1c) V31t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V38t mono_2Etyop_2Enum_2Enum)) (= (or (V3a V38t) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2b) V1c) V38t)) ((((F19 V3a) V2b) V1c) V38t))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((((F5 V2b) V1c) V0d) V13t) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1c) V0d) V13t) (V2b V13t)))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (and (V2b V18t) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1c) V0d) V18t)) ((((F8 V2b) V1c) V0d) V18t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V11t) (V1c V11t) (V3a V11t)) ((((F4 V3a) V1c) V2b) V11t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((((F2 V3a) V1c) V2b) V8t) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V8t) (V1c V8t) (V3a V8t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V42t mono_2Etyop_2Enum_2Enum)) (= (or (V0d V42t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2b) V42t)) (((F28 V0d) V2b) V42t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V43t mono_2Etyop_2Enum_2Enum)) (= (((F29 V3a) V0d) V43t) (and (not (V0d V43t)) (not (V3a V43t))))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V41t mono_2Etyop_2Enum_2Enum)) (= (((((F21 V1c) V0d) V2b) V3a) V41t) (or (not (V1c V41t)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F28 V0d) V2b)) ((F29 V3a) V0d)) V41t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V35t mono_2Etyop_2Enum_2Enum)) (= (or (V0d V35t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V35t)) (((F26 V0d) V1c) V35t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V36t mono_2Etyop_2Enum_2Enum)) (= (((F27 V3a) V0d) V36t) (and (not (V3a V36t)) (not (V0d V36t))))) (=> (forall ((V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V34t mono_2Etyop_2Enum_2Enum)) (= (((((F18 V2b) V1c) V0d) V3a) V34t) (or (V2b V34t) (V1c V34t) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F26 V0d) V1c)) ((F27 V3a) V0d)) V34t)))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (((F25 V3a) V1c) V16t) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1c) V16t) (V3a V16t)))) (=> (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F25 V3a) V1c)) V2b) V15t) (V0d V15t)) (((((F7 V0d) V3a) V1c) V2b) V15t))) (=> (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V21t mono_2Etyop_2Enum_2Enum)) (= (((F24 V3a) V0d) V21t) (and (V3a V21t) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0d) V21t))))) (=> (forall ((V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (((((F10 V1c) V0d) V3a) V2b) V20t) (and (not (V0d V20t)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F24 V3a) V0d)) V2b) V20t) (V1c V20t)))) (forall ((V0d (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V17x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a))) (= (or ((_let_1 ((((F10 V1c) V0d) V3a) V2b)) V17x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1c) V0d) V17x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F9 V3a) V0d)) V2b) V17x))) ((_let_1 (((F8 V2b) V1c) V0d)) V17x)))) (forall ((V30x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (((F16 V3a) V2b) V1c)) V0d) V30x) (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((((F18 V2b) V1c) V0d) V3a)) V0d) V30x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F17 V0d) V1c)) ((F22 V3a) V0d)) V30x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2b) V1c) V30x))))) (forall ((V37x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((((F21 V1c) V0d) V2b) V3a)) V0d) V37x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2b) V1c) V37x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F20 V0d) V2b)) ((F23 V3a) V0d)) V37x))) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (((F19 V3a) V2b) V1c)) V0d) V37x))) (forall ((V27x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F14 V3a) V2b)) V1c) V27x) (or (and (or (V3a V27x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2b) V27x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F15 V2b) V3a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1c)) V27x)) (V1c V27x)))) (forall ((V24x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F12 V3a) V2b)) V1c) V24x) (or (and (or (V3a V24x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2b) V24x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F13 V2b) V3a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1c)) V24x)) (V1c V24x)))) (forall ((V22x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a) V1c) V22x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2b) V1c) V22x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F11 V3a) V2b)) V1c) V22x))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a))) (= (or ((_let_1 ((((F7 V0d) V3a) V1c) V2b)) V12x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1c) V0d) V12x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F6 V3a) V1c)) V2b) V12x))) ((_let_1 (((F5 V2b) V1c) V0d)) V12x)))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a))) (= ((_let_1 ((F3 V2b) V1c)) V9x) (or ((_let_1 (((F4 V3a) V1c) V2b)) V9x) (and (V2b V9x) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1c) V9x)))))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a))) (= ((_let_1 ((F1 V2b) V1c)) V6x) (or ((_let_1 (((F2 V3a) V1c) V2b)) V6x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1c) V6x) (V2b V6x)))))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a))) (= (or ((_let_1 V2b) V4x) ((_let_1 V1c) V4x)) ((_let_1 ((F0 V2b) V1c)) V4x))))))))))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (= (_let_441 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Enum_2Enum)) (_let_441 c_2Ebool_2EARB_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Estring_2Echar)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0c2n (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1n2c (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V2b mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (=> (and (forall ((V4x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4x) V2b) (= (V0c2n (V1n2c V4x)) V4x))) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V2b)) (= (((mono_2Ec_2EASCIInumbers_2Es2n V2b) V0c2n) (((mono_2Ec_2EASCIInumbers_2En2s V2b) V1n2c) V3n)) V3n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((F9 (-> mono_2Etyop_2Estring_2Echar Bool)) (F18 (-> mono_2Etyop_2Estring_2Echar Bool)) (F24 (-> mono_2Etyop_2Estring_2Echar Bool)) (F5 (-> mono_2Etyop_2Estring_2Echar Bool)) (F14 (-> mono_2Etyop_2Estring_2Echar Bool)) (F20 (-> mono_2Etyop_2Estring_2Echar Bool)) (F7 (-> mono_2Etyop_2Estring_2Echar Bool)) (F16 (-> mono_2Etyop_2Estring_2Echar Bool)) (F22 (-> mono_2Etyop_2Estring_2Echar Bool)) (F11 (-> mono_2Etyop_2Estring_2Echar Bool)) (F3 (-> mono_2Etyop_2Estring_2Echar Bool)) (F8 (-> mono_2Etyop_2Estring_2Echar Bool)) (F17 (-> mono_2Etyop_2Estring_2Echar Bool)) (F23 (-> mono_2Etyop_2Estring_2Echar Bool)) (F12 (-> mono_2Etyop_2Estring_2Echar Bool)) (F4 (-> mono_2Etyop_2Estring_2Echar Bool)) (F13 (-> mono_2Etyop_2Estring_2Echar Bool)) (F19 (-> mono_2Etyop_2Estring_2Echar Bool)) (F6 (-> mono_2Etyop_2Estring_2Echar Bool)) (F15 (-> mono_2Etyop_2Estring_2Echar Bool)) (F21 (-> mono_2Etyop_2Estring_2Echar Bool)) (F10 (-> mono_2Etyop_2Estring_2Echar Bool)) (F2 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (F1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (F0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (F9 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))) (F18 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F24 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F5 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))) (F14 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F20 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (F7 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F16 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (F22 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F11 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (F3 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (F8 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))) (F17 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (F23 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (F12 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F4 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F13 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (F19 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F6 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))))) (F15 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (F21 V3v))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (= (F10 V3v) (= V3v (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))) (=> (forall ((V3v mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))) (let ((_let_4 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_3))))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 _let_5))) (let ((_let_7 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_6))))) (let ((_let_8 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_6))))) (let ((_let_9 (mono_2Ec_2Earithmetic_2EBIT1 _let_5))) (let ((_let_10 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_9))))) (let ((_let_11 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_9))))) (let ((_let_12 (mono_2Ec_2Earithmetic_2EBIT2 _let_1))) (let ((_let_13 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_12))))) (= (F2 V3v) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F3 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F4 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F5 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_5))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F6 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F7 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_12))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F8 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_9))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F9 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_6))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F10 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL _let_3))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F11 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_2)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F12 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_12)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F13 V3v)) _let_13) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F14 V3v)) _let_11) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F15 V3v)) _let_10) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F16 V3v)) _let_8) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F17 V3v)) _let_7) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F18 V3v)) _let_4) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F19 V3v)) _let_13) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F20 V3v)) _let_11) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F21 V3v)) _let_10) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F22 V3v)) _let_8) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F23 V3v)) _let_7) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F24 V3v)) _let_4) mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Enum_2Enum))))))))))))))))))))))))))))))))))))) (=> (forall ((V1UNHEX (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V2a mono_2Etyop_2Estring_2Echar)) (= ((F1 V1UNHEX) V2a) ((mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum F2) V2a))) (=> (forall ((V0R (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (= (F0 V0R) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Estring_2Echar V0R))) (= mono_2Ec_2EASCIInumbers_2EUNHEX ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 F0)) F1)))))))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Estring_2Echar)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_440 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar)) (_let_440 c_2Elist_2EMAP_2E0)) (= mono_2Ec_2EASCIInumbers_2Enum__to__hex__string ((mono_2Ec_2EASCIInumbers_2En2s _let_241) mono_2Ec_2EASCIInumbers_2EHEX)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Estring_2Echar)) (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Estring_2Echar V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Estring_2Echar))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (= (_let_439 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum)) (_let_439 c_2Elist_2EMAP_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (= (_let_438 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Erich__list_2ELASTN_2Emono_2Etyop_2Estring_2Echar)) (_let_438 c_2Erich__list_2ELASTN_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2EASCIInumbers_2Enum__from__hex__string) mono_2Ec_2EASCIInumbers_2Enum__to__hex__string) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (and ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar mono_2Ec_2Estring_2EisHexDigit) V0s) (not (= V0s mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (F0 V0s))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2EASCIInumbers_2EfromHexString V0s) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (F0 V0s)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2EASCIInumbers_2Enum__from__hex__string V0s))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2EASCIInumbers_2Enum__from__dec__string (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V0n)) V0n)) (forall ((F1 (-> mono_2Etyop_2Estring_2Echar Bool)) (F0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (forall ((V1c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (or (= V1c (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_1))))) (= V1c (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1)))))) (F1 V1c)))) (=> (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (F0 V0s) (and (not (= V0s mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar F1) V0s)))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2EASCIInumbers_2EfromBinString V0s) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (F0 V0s)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2EASCIInumbers_2Enum__from__bin__string V0s))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V1s))) (=> (and ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) mono_2Ec_2EASCIInumbers_2EUNHEX)) V1s) ((mono_2Ec_2Eprim__rec_2E_3C V0x) _let_1)) (= (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ESUB ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum V1s) (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_1) V0x))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Ebit_2EBIT V0x) (mono_2Ec_2EASCIInumbers_2Enum__from__bin__string V1s)))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1f (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V2b mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EASCIInumbers_2Es2n V2b) V1f) V0s) ((mono_2Ec_2Enumposrep_2El2n V2b) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V1f) (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2EEXPLODE V0s)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= mono_2Ec_2EASCIInumbers_2Enum__to__bin__string ((mono_2Ec_2EASCIInumbers_2En2s _let_19) mono_2Ec_2EASCIInumbers_2EHEX)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1))))))))) (forall ((V0 mono_2Etyop_2Estring_2Echar)) (= (j_mono_2Etyop_2Estring_2Echar ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_437 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum)) (_let_437 c_2Ecombin_2Eo_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) ((s (_let_2 _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2EASCIInumbers_2Enum__from__bin__string) mono_2Ec_2EASCIInumbers_2Enum__to__bin__string) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_436 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Estring_2Echar)) (_let_436 c_2Erelation_2EWF_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 _let_1)) (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ecombin_2EI_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Estring_2Echar)) (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Estring_2Echar)) (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (= (_let_435 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum)) (_let_435 c_2Erelation_2EWFREC_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V2s))) (= (= (_let_1 (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V0n)) (_let_1 (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V1m))) (= V0n V1m)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V1B_2E0 u) (V0x_2E0 u) (V3b_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V0x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V1B_2E0))) (let ((_let_7 ((s A_27a) V3b_2E0))) (let ((_let_8 (_let_4 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_3))) _let_7)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_7) _let_6))) (_let_2 (c_2Eoption_2ESOME_2E1 _let_3))) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))) (=> (forall ((V5b_2E0 u) (V0x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V5b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F3_2E0)) _let_3))) _let_2)))))))))) (=> (forall ((V0x_2E0 u) (V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27c) V4a_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V0x_2E0))) (let ((_let_6 (_let_4 V5b_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_9))) (= (_let_2 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F2_2E0)) _let_5))) _let_3))) _let_6)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F3_2E0)) _let_6))) _let_5))) (_let_2 (c_2Eoption_2ESOME_2E1 _let_3))) (_let_2 c_2Eoption_2ENONE_2E0))))))))))))))) (=> (forall ((V0x_2E0 u) (V2A_2E0 u) (V4a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V2A_2E0))) (let ((_let_4 ((s A_27c) V4a_2E0))) (let ((_let_5 ((s A_27b) V0x_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_8 (_let_1 _let_7))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_7) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_1 _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_2) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_6 _let_12)) F1_2E0)) _let_5))) _let_3))) _let_4)) (_let_10 ((c_2Epair_2E_2C_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F2_2E0)) _let_5))) _let_4))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))))))))))))))))) (forall ((V0x_2E0 u) (V1B_2E0 u) (V2A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s A_27b) V0x_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V1B_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 _let_2))) (let ((_let_9 (s (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_10 (_let_9 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_9 c_2Epred__set_2EEMPTY_2E0))))) (let ((_let_11 (tyop_2Emin_2Efun A_27c))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 ((s _let_12) V2A_2E0))) (let ((_let_14 (_let_7 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_15 (_let_11 ((tyop_2Epair_2Eprod _let_14) tyop_2Emin_2Ebool)))) (let ((_let_16 ((tyop_2Emin_2Efun _let_12) _let_15))) (let ((_let_17 (s ((tyop_2Emin_2Efun _let_14) tyop_2Emin_2Ebool)))) (and (= (_let_17 ((c_2Ecardinal_2Eset__exp_2E2 _let_13) _let_10)) (_let_17 (c_2Epred__set_2EGSPEC_2E1 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_7 _let_16)) F1_2E0)) _let_4))) _let_13))))) (= (_let_3 ((c_2Ecardinal_2Eset__exp_2E2 _let_10) _let_6)) (_let_3 ((c_2Epred__set_2EINSERT_2E2 ((s _let_2) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) _let_6))) _let_4))) (_let_3 c_2Epred__set_2EEMPTY_2E0)))))))))))))))))))))))))))) (= (_let_434 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum)) (_let_434 c_2Ebool_2Eliteral__case_2E0)) (= (_let_432 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum)) (_let_432 c_2Ecombin_2Eo_2E0)) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Erich__list_2ELASTN_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_431 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar)) (_let_431 c_2Erelation_2EWFREC_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (= (_let_430 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar)) (_let_430 c_2Elist_2EMAP_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2Echain_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewot_2Echain_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2Euncl_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewot_2Euncl_2E0)) _let_2)))))))) (forall ((A_27x d) (V0C_2E0 u)) (= (forall ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2b_2E0))) (let ((_let_4 (_let_2 V1a_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0C_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ewot_2Ecpl_2E2 _let_4) _let_3))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewot_2Echain_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V0C_2E0)))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2Etower_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewot_2Etower_2E0)) _let_2)))))))) (forall ((A_27x d) (V0A_2E0 u) (V1B_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0A_2E0))) (let ((_let_3 (_let_1 V1B_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ewot_2Ecpl_2E2 _let_2) _let_3))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (forall ((V1B_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (not (= (_let_1 V1B_2E0) (_let_1 c_2Epred__set_2EEMPTY_2E0))) (exists ((V2m_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2m_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)))) (forall ((V3b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) (_let_5 V1B_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) (_let_1 V2m_2E0)))) _let_2)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakOrder_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2EWeakWellOrder_2E1 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Ewot_2Esetsuc_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ewot_2Esetsuc_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongLinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongLinearOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongLinearOrder_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2EStrongWellOrder_2E1 _let_2)))))))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27x d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 (c_2Ewot_2Esetsuc_2E1 _let_2)) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27x) (c_2Ewot_2Emex_2E1 _let_2))) _let_2)))))) (forall ((A_27a d)) (exists ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongLinearOrder_2E1 _let_2))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27x))) (= (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27x)) c_2Epred__set_2ECHOICE_2E0)) _let_2))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27x d) (V0c_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewot_2Esuccl_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V0c_2E0)))) (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0c_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 (_let_3 (c_2Ewot_2Esetsuc_2E1 _let_4))) _let_2)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Epred__set_2ECOMPL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2ECOMPL_2E0)) _let_3))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27x d) (F0_2E0 u)) (=> (forall ((V0X_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0X_2E0))) (let ((_let_5 ((s A_27x) V1x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_1 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) F0_2E0)) _let_4))) _let_5)) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_3 (c_2Ewot_2Epreds_2E1 _let_5))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_4)))))))))))))) (forall ((V0X_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0X_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool)))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (s (_let_5 tyop_2Emin_2Ebool)))) (= (_let_6 (c_2Ewot_2Epreds__image_2E1 _let_3)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F0_2E0)) _let_3)))))))))))))) (forall ((A_27a d) (V0G_2E0 u) (V1f_2E0 u) (V2seen_2E0 u) (V3fringe_2E0 u) (V4acc_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))))) (=> (and (= (_let_3 V1f_2E0) (_let_3 c_2Elist_2ECONS_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_2 tyop_2Emin_2Ebool)) (c_2EdirGraph_2EParents_2E1 ((s (_let_2 _let_1)) V0G_2E0))))))) (forall ((V5x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4acc_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (c_2Ebool_2EIN_2E2 ((s A_27a) V5x_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 V3fringe_2E0))) (let ((_let_9 ((s (_let_4 _let_1)) V0G_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_2 (((((c_2Ebft_2EBFT_2E5 _let_9) ((s (_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) V1f_2E0)) (_let_2 V2seen_2E0)) _let_8) _let_3))))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2EdirGraph_2EREACH__LIST_2E2 _let_9) _let_8))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)))))))))))))))))))))) (= (_let_429 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_429 c_2Epair_2Epair__CASE_2E0)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (V0x_2E0 u) (V1w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (=> (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))) (= (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2))))))))))) (exists ((V6g_2E0 u)) (and (forall ((V8x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V6g_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)))) _let_2)))))) (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V6g_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))))))))))) (forall ((A_27a d) (V0w2_2E0 u) (V1w1_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (= (= (_let_1 V1w1_2E0) (_let_1 V0w2_2E0)) (forall ((V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 (_let_4 V2a_2E0)) (_let_4 V3b_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 V1w1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 V0w2_2E0))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1c_2E0 u)) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3x_2E0))) (let ((_let_4 (_let_2 V4y_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1c_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 V1c_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_2)))))))))) (exists ((V5z_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V5z_2E0)))) (forall ((V6x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1c_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 V5z_2E0))))))))))))))) (exists ((V7a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V7a_2E0)))) (forall ((V8x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8x_2E0))) (let ((_let_4 (_let_2 V7a_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))) (= _let_4 _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Eset__relation_2Estrict_2E0)) _let_3))))))) (forall ((A_27a d) (V0r2_2E0 u) (V1r1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r2_2E0))) (let ((_let_3 (_let_1 V1r1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0e_2E0 u) (V3y_2E0 u) (V1w_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0e_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (_let_1 V3y_2E0))) (let ((_let_5 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_6 ((s _let_5) V1w_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_10 _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_10 _let_12)) F1_2E0)) _let_3))) _let_2))) _let_4))) _let_6))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_4))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_6))))) (not (= _let_4 _let_2)) (not (= _let_3 _let_2))))))))))))))))) (=> (forall ((V0e_2E0 u) (V1w_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V1w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3y_2E0))) (let ((_let_5 (_let_3 V0e_2E0))) (let ((_let_6 (_let_3 V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_13 ((tyop_2Epair_2Eprod _let_12) tyop_2Emin_2Ebool))) (let ((_let_14 (s _let_13))) (let ((_let_15 (_let_9 _let_13))) (let ((_let_16 (_let_9 _let_15))) (let ((_let_17 (_let_7 _let_16))) (= (_let_14 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_9 _let_17)) F0_2E0)) _let_5))) _let_2))) _let_6))) _let_4)) (_let_14 ((c_2Epair_2E_2C_2E2 ((s _let_12) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F1_2E0)) _let_6))) _let_5))) _let_4))) _let_2))))))))))))))))))))))) (forall ((V0e_2E0 u) (V1w_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1w_2E0))) (let ((_let_4 ((s A_27a) V0e_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 (_let_7 _let_6)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (= (_let_2 ((c_2Ewellorder_2Eremove_2E2 _let_4) _let_3)) (_let_2 (c_2Ewellorder_2Ewellorder__ABS_2E1 ((s (_let_10 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s (_let_10 _let_6)) (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F0_2E0)) _let_4))) _let_3))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0))))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0))))) (let ((_let_4 (s (_let_2 A_27b)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V5y_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f1_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_3 V4x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) (_let_10 (c_2Eset__relation_2Estrict_2E1 (_let_10 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_4))))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)))))))))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V7y_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f2_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_3 V6x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) (_let_10 (c_2Eset__relation_2Estrict_2E1 (_let_10 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_4))))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 (_let_4 V2f2_2E0)) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 (_let_4 V3f1_2E0)) _let_3) _let_1)))) (forall ((V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))))) (= (_let_4 ((app_2E2 (_let_3 V3f1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V2f2_2E0)) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (= (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_2)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EDELETE_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V1e_2E0 u) (V3y_2E0 u) (V0w_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (_let_4 V2x_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1e_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_10 _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_10 _let_12)) F1_2E0)) _let_6))) _let_8))) _let_5))) _let_2))) (and (not (= _let_6 _let_8)) (not (= _let_5 _let_8)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))))))) (=> (forall ((V1e_2E0 u) (V0w_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3y_2E0))) (let ((_let_5 (_let_3 V1e_2E0))) (let ((_let_6 (_let_3 V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_13 ((tyop_2Epair_2Eprod _let_12) tyop_2Emin_2Ebool))) (let ((_let_14 (s _let_13))) (let ((_let_15 (_let_9 _let_13))) (let ((_let_16 (_let_9 _let_15))) (let ((_let_17 (_let_7 _let_16))) (= (_let_14 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_9 _let_17)) F0_2E0)) _let_5))) _let_2))) _let_6))) _let_4)) (_let_14 ((c_2Epair_2E_2C_2E2 ((s _let_12) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F1_2E0)) _let_6))) _let_5))) _let_4))) _let_2))))))))))))))))))))))) (forall ((V0w_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 _let_3)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 ((s (_let_7 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s (_let_7 _let_3)) (c_2Epair_2EUNCURRY_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) F0_2E0)) ((s A_27a) V1e_2E0)))) ((s _let_1) V0w_2E0))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Eposet_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Eposet_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Efinite_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Efinite_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) _let_2)))))) (forall ((A_27a d) (V0z_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3w_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V3w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0z_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_3 V1y_2E0))) (let ((_let_8 (c_2Epair_2E_2C_2E2 (_let_3 V2x_2E0)))) (let ((_let_9 (s _let_5))) (let ((_let_10 (c_2Ebool_2EIN_2E2 (_let_9 (_let_8 _let_7))))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 (_let_9 (_let_8 _let_4))) _let_12))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 _let_12))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 (_let_9 ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 ((c_2Ewellorder_2Ewobound_2E2 _let_4) _let_2))))))))))))))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)) (and (forall ((V2n mono_2Etyop_2Enum_2Enum)) (V0P (mono_2Ec_2Enum_2ESUC V2n))) (V0P mono_2Ec_2Enum_2E0)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Ewellorder_2EelsOf_2E1 _let_1)) (_let_3 ((c_2Epred__set_2EUNION_2E2 (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_3 (c_2Eset__relation_2Erange_2E1 _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2y_2E0))) (let ((_let_4 (_let_2 V1x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0P_2E0))) (let ((_let_9 (_let_5 _let_6))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_8))) _let_4))) _let_3)))))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Eposet_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) F0_2E0)) ((s _let_3) V0P_2E0))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Ewellorder_2Ewellorder A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Ewellorder_2Eorderlt_2E0)))))) (forall ((A_27a d) (V0P_2E0 u) (V1w_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_2) (_let_1 V2x_2E0)))) (_let_7 (c_2Eset__relation_2Estrict_2E1 (_let_7 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_5))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 (c_2Ewellorder_2EelsOf_2E1 _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V0n mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1i) V2j) ((mono_2Ec_2Eprim__rec_2E_3C V2j) V0n)) (((F1 V1i) V2j) V0n))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum)) (= (((F0 V0n) V1i) V2j) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1i) V2j)) (((F1 V1i) V2j) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Ewellorder_2Ewellorder_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (F0 V0n)))))))) (forall ((A_27a d) (V0r2_2E0 u) (V1r1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r2_2E0))) (let ((_let_3 (_let_1 V1r1_2E0))) (= (_let_1 (c_2Eset__relation_2Estrict_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1w_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_3 (_let_2 V1w_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Ewellorder_2Ewobound_2E2 _let_1) _let_3)) (_let_2 (c_2Ewellorder_2Ewellorder__ABS_2E1 (_let_4 ((c_2Eset__relation_2Errestrict_2E2 (_let_4 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_3))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((c_2Ewellorder_2Eiseg_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4s1_2E0 u) (V0w2_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) V0w2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V4s1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (= _let_5 (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F2_2E0)) _let_5))) _let_2))))))))))) (=> (forall ((V0w2_2E0 u) (V4s1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V4s1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) V0w2_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_5))) (= (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F1_2E0)) _let_4))) _let_2)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_2))) _let_4))) (_let_6 c_2Eoption_2ENONE_2E0)) (_let_6 ((c_2Ewellorder_2Ewleast_2E2 _let_4) _let_2)))))))))))))))) (=> (forall ((V0w2_2E0 u) (V3s0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3s0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_9 ((s _let_8) V0w2_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_1))) (let ((_let_11 (tyop_2Emin_2Efun _let_8))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_1))) (= (_let_2 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_11 _let_12)) F0_2E0)) _let_9))) _let_6)) (_let_2 ((c_2Ebool_2ELET_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_9))) ((s _let_7) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 A_27b)) c_2Eoption_2ETHE_2E0)) (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) (_let_2 c_2Eoption_2ENONE_2E0))))))))))))))))))))) (forall ((V0w2_2E0 u) (V1w_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_5 ((s _let_4) V0w2_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_7) _let_6))) (let ((_let_9 (s _let_6))) (= (_let_9 (((c_2Ewellorder_2Ewo2wo_2E3 _let_2) _let_5) _let_1)) (_let_9 ((c_2Ebool_2ELET_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) ((s _let_7) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 _let_6)) ((c_2Ewellorder_2Ewo2wo_2E2 _let_2) _let_5))) ((s (_let_3 tyop_2Emin_2Ebool)) ((c_2Ewellorder_2Eiseg_2E2 _let_2) _let_1))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0r_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((s (_let_3 A_27a)) V2f_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (= (_let_5 (c_2Eset__relation_2Edomain_2E1 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_6)) ((c_2Epair_2E_23_23_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V1g_2E0)))) _let_2)))) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Eset__relation_2Edomain_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0w_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V0w_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s A_27a) V1e_2E0))) (= (_let_3 (c_2Ewellorder_2EelsOf_2E1 (_let_1 ((c_2Ewellorder_2EADD1_2E2 _let_4) _let_2)))) (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_3 (c_2Ewellorder_2EelsOf_2E1 _let_2)))))))))) (forall ((A_27a d)) (let ((_let_1 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (=> _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0w1_2E0 u) (V1w2_2E0 u) (V2w3_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27c)) V2w3_2E0))) (let ((_let_2 (c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1f_2E0 u)) (=> (and (forall ((V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2a_2E0))) (let ((_let_3 (_let_1 V3b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0P_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u) (V5a_2E0 u) (V6b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6b_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 _let_3)) V1f_2E0)))) (let ((_let_6 (s _let_3))) (let ((_let_7 (c_2Ebool_2EIN_2E2 ((s A_27b) V4x_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V5a_2E0))) (let ((_let_10 (_let_4 tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_6 (_let_5 _let_9))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_4 _let_10)) V0P_2E0)) _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_6 (_let_5 _let_2)))))))))))))))))) (forall ((V7a_2E0 u) (V8b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8b_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 _let_3)) V1f_2E0)))) (let ((_let_6 (s _let_3))) (let ((_let_7 (_let_1 V7a_2E0))) (let ((_let_8 (_let_4 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_4 _let_8)) V0P_2E0)) _let_7))) _let_2))) (= (_let_6 (_let_5 _let_7)) (_let_6 (_let_5 _let_2))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) _let_2)))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) (_let_4 (c_2Epair_2EUNCURRY_2E1 ((s (_let_3 (_let_3 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1w2_2E0 u) (V2w1_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27b)))) (let ((_let_2 (_let_1 V1w2_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V3f_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_7 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_8 (_let_7 V2w1_2E0))) (let ((_let_9 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_10 (c_2Epred__set_2EBIJ_2E3 _let_5))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_9 (c_2Ewellorder_2EelsOf_2E1 _let_8)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 _let_12) (_let_6 (c_2Ewellorder_2EelsOf_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 _let_3) _let_12))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V5y_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_3 V4x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) (_let_10 (c_2Eset__relation_2Estrict_2E1 (_let_10 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w1_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_4))))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0))))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 (_let_9 (c_2Ewellorder_2EelsOf_2E1 (_let_7 ((c_2Ewellorder_2Ewobound_2E2 _let_3) _let_8))))) (_let_6 (c_2Ewellorder_2EelsOf_2E1 (_let_1 ((c_2Ewellorder_2Ewobound_2E2 ((s A_27b) ((app_2E2 _let_5) _let_3))) _let_2))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_23_23_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_23_23_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderiso_2E2 _let_1) _let_1))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)) ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_23_23_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_23_23_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((A_27a d) (V0w_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 (_let_1 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0)))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ewellorder_2Efl_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ewellorder_2Efl_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (=> (= (_let_1 (((c_2Ewellorder_2Ewo2wo_2E3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)) ((s A_27a) V2x_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)) (forall ((V3y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3y_2E0))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 (_let_2 V2x_2E0)) _let_3))) (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_4))))))) (= (_let_1 (((c_2Ewellorder_2Ewo2wo_2E3 _let_4) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)) _let_3)) (_let_1 c_2Eoption_2ENONE_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0r0_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellfounded_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellfounded_2E1 _let_2))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) (_let_4 V0y_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1w_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V2s_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_7 ((c_2Ewellorder_2Ewleast_2E2 _let_1) _let_6)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_3))) (and (forall ((V3y_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (_let_4 V0x_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_9 (c_2Ebool_2EIN_2E2 _let_5))) (=> (and (not (= _let_6 _let_5)) (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_8 V2s_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_8 (c_2Ewellorder_2EelsOf_2E1 _let_1)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))))))))))))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 (c_2Ewellorder_2EelsOf_2E1 _let_1))))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V2f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (_let_3 tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) (_let_7 ((c_2Epred__set_2EUNION_2E2 (_let_7 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_7 (c_2Eset__relation_2Erange_2E1 _let_2))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Eantisym_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Eantisym_2E1 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_5)) ((c_2Epair_2E_23_23_2E2 _let_4) _let_4))) _let_2)))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Ewleast_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ewellorder_2Ewleast_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V2f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (_let_3 tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) (_let_7 ((c_2Epred__set_2EUNION_2E2 (_let_7 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_7 (c_2Eset__relation_2Erange_2E1 _let_2))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Etransitive_2E1 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_5)) ((c_2Epair_2E_23_23_2E2 _let_4) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ewellorder_2EfromNatWO_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Ewellorder_2EfromNatWO_2E0)) _let_1))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Eiseg_2E2 _let_3) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) c_2Ewellorder_2Eiseg_2E0)) _let_3))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V0y_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_4) _let_6))) (_let_8 (c_2Eset__relation_2Estrict_2E1 (_let_8 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_2)))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 _let_2))) (= (_let_1 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) (c_2Ewellorder_2Ewellorder__ABS_2E1 _let_2)))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0w_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderlt_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) c_2Ewellorder_2EwZERO_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0y0_2E0 u) (V1y_2E0 u) (V2x0_2E0 u) (V3x_2E0 u) (V4w2_2E0 u) (V5w1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V4w2_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1y_2E0))) (let ((_let_6 (_let_4 V0y0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_9 V3x_2E0))) (let ((_let_11 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V5w1_2E0))) (let ((_let_12 ((c_2Ewellorder_2Ewo2wo_2E3 _let_11) _let_1))) (let ((_let_13 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_14 (s ((tyop_2Emin_2Efun _let_13) tyop_2Emin_2Ebool)))) (let ((_let_15 (_let_9 V2x0_2E0))) (=> (and (= (_let_8 (_let_12 _let_15)) (_let_8 (c_2Eoption_2ESOME_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_13) ((c_2Epair_2E_2C_2E2 _let_15) _let_10))) (_let_14 (c_2Eset__relation_2Estrict_2E1 (_let_14 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_11))))))) (= (_let_8 (_let_12 _let_10)) (_let_8 (c_2Eoption_2ESOME_2E1 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (= (_let_1 c_2Ewellorder_2EwZERO_2E0) (_let_1 (c_2Ewellorder_2Ewellorder__ABS_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 (_let_3 _let_2))) ((tyop_2Emin_2Efun _let_1) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool))) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (V0w_2E0 u) (V1b_2E0 u) (V2a_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V0w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a_2E0))) (let ((_let_5 (c_2Ewellorder_2Ewobound_2E2 _let_4))) (let ((_let_6 (_let_3 V1b_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_4) _let_6))) (_let_8 (c_2Eset__relation_2Estrict_2E1 (_let_8 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2))))))) (= (_let_1 (_let_5 (_let_1 ((c_2Ewellorder_2Ewobound_2E2 _let_6) _let_2)))) (_let_1 (_let_5 _let_2))))))))))))) (forall ((A_27a d) (V0a_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Ewellorder_2Ewellorder__ABS_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (V0w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewellorder_2Efinite_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewellorder_2Ewellorder__ABS_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ewellorder_2Ewellorder__ABS_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V0y_2E0))) (let ((_let_7 (_let_5 V1x_2E0))) (let ((_let_8 (c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_7) _let_6))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_4))) (or (and (= _let_7 _let_6) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_7) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_3 (c_2Eset__relation_2Estrict_2E1 _let_4))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0y0_2E0 u) (V1x0_2E0 u) (V2b0_2E0 u) (V3a0_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27d)) V2b0_2E0))) (let ((_let_2 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0y0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27c)) V3a0_2E0))) (let ((_let_5 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1x0_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderlt_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderlt_2E2 _let_2) _let_1))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w_2E0)))))))) mono_2Ec_2Ebool_2EF))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V2f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (_let_3 tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) (_let_7 ((c_2Epred__set_2EUNION_2E2 (_let_7 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_7 (c_2Eset__relation_2Erange_2E1 _let_2))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Ewellorder_2Ewellorder_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Ewellorder_2Ewellorder_2E1 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_5)) ((c_2Epair_2E_23_23_2E2 _let_4) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0w1_2E0 u) (V1w2_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0))) (let ((_let_2 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (V0w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderlt_2E2 _let_1) _let_1))) mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellorder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Ewellorder_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_2 V1x_2E0)) (_let_2 V0y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) c_2Ewellorder_2EwZERO_2E0)))))) mono_2Ec_2Ebool_2EF)))) (forall ((A_27a d) (V0w_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2y_2E0))) (let ((_let_7 (_let_5 V1x_2E0))) (let ((_let_8 (s _let_2))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_7) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_6) _let_10)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 (_let_8 ((c_2Epair_2E_2C_2E2 _let_6) _let_7))) _let_4))) (= _let_7 _let_6) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 (_let_8 ((c_2Epair_2E_2C_2E2 _let_7) _let_6))) _let_4)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellfounded_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0R_2E0)))) (forall ((V1s_2E0 u)) (=> (exists ((V2w_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2w_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))) (exists ((V3min_2E0 u)) (and (forall ((V4w_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4w_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_2) (_let_1 V3min_2E0)))) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0R_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3min_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2EChain_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2EChain_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ewellorder_2EADD1_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Ewellorder_2EADD1_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (V0z_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3w_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V3w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0z_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_3 V1y_2E0))) (let ((_let_8 (c_2Epair_2E_2C_2E2 (_let_3 V2x_2E0)))) (let ((_let_9 (s _let_5))) (let ((_let_10 (c_2Ebool_2EIN_2E2 (_let_9 (_let_8 _let_7))))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))) (let ((_let_13 (_let_6 (c_2Eset__relation_2Estrict_2E1 _let_12)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 _let_12))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 (_let_9 ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) _let_13))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 (_let_9 (_let_8 _let_4))) _let_13)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 ((c_2Ewellorder_2Ewobound_2E2 _let_4) _let_2)))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0w1_2E0 u) (V1w2_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0)))) (exists ((V2f_2E0 u)) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0))))))))))) (forall ((V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V9y_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_3 V8x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) (_let_10 (c_2Eset__relation_2Estrict_2E1 (_let_10 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_4))))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0)))))))))))))))))))) (forall ((V6y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V6y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0)))))) (exists ((V7x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s A_27a) V7x_2E0))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s (_let_1 A_27b)) V2f_2E0)) _let_2)) (_let_3 V6y_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0))))))))))))) (forall ((V4x1_2E0 u) (V5x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V2f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x1_2E0))) (let ((_let_7 ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_6) _let_7)))) (= (= _let_6 _let_2) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0g_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (= (forall ((V4y_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V4y_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (=> (and (= _let_4 (_let_3 ((app_2E2 ((s (_let_5 A_27b)) V1f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_5 tyop_2Emin_2Ebool)) V2s_2E0))))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)) _let_4)) _let_2)))))))) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V2s_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V1f_2E0)) _let_2)))) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0H_2E0 u)) (=> (forall ((V1f_2E0 u) (V2g_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V0H_2E0)))) (let ((_let_5 (s A_27a))) (=> (forall ((V4m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4m)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4m) V3n) (= (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V2g_2E0)) _let_1)))))))) (= (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V1f_2E0)))) _let_1)) (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V2g_2E0)))) _let_1)))))))))) (exists ((V5f_2E0 u)) (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5f_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((app_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V0H_2E0)) _let_4))) _let_1)))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u) (V3s2_2E0 u) (V4s1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0y_2E0))) (let ((_let_6 (_let_4 V1x_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_10 (_let_9 V4s1_2E0))) (let ((_let_11 (c_2Ewellorder_2Ewleast_2E2 _let_1))) (let ((_let_12 (_let_9 V3s2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_10) _let_12))) (= (_let_8 (_let_11 _let_12)) (_let_8 (c_2Eoption_2ESOME_2E1 _let_5))) (= (_let_8 (_let_11 _let_10)) (_let_8 (c_2Eoption_2ESOME_2E1 _let_6)))) (or (= _let_6 _let_5) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_2))))))))))) (= (_let_428 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (_let_428 c_2Epair_2EUNCURRY_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0))) (let ((_let_2 ((s A_27b) V3y_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (=> (= (_let_3 (((c_2Ewellorder_2Ewo2wo_2E3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)) _let_1) ((s A_27a) V2x_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ewellorder_2Eposet_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ewellorder_2Eposet_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ewellorder_2EelsOf_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ewellorder_2EelsOf_2E0)) _let_3))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 (((c_2Ewellorder_2Ewo2wo_2E3 _let_5) _let_3) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Ewellorder_2Ewo2wo_2E0)) _let_5))) _let_3))) _let_1))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (=> (forall ((V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)))) (let ((_let_5 (_let_2 V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (_let_4 _let_5))) (_let_2 (_let_4 _let_3))))))))))))) (exists ((V3s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3s_2E0))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)) _let_3)) _let_3))))))) (= (_let_427 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool)) (_let_427 c_2Epair_2E_2C_2E0)) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Eantisym_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) ((tyop_2Epair_2Eprod A_27b) A_27b)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epair_2E_23_23_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epair_2E_23_23_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ewellorder_2Ewellorder__ABS_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ewellorder_2Ewellorder__ABS_2E0)) _let_3))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Efinite_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Efinite_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ewellorder_2Ewobound_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Ewellorder_2Ewobound_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_2) _let_3))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) _let_5)))) (= _let_3 _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Esome_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Esome_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (= (_let_426 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ewellorder_2Ewellorder_2Emono_2Etyop_2Enum_2Enum)) (_let_426 c_2Ewellorder_2Ewellorder_2E0)) (forall ((A_27a d) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V0n mono_2Etyop_2Enum_2Enum)) (= (((F1 V1i) V2j) V0n) (and ((mono_2Ec_2Eprim__rec_2E_3C V2j) V0n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1i) V2j)))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2j)))) (let ((_let_3 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_10 (_let_9 _let_7))) (let ((_let_11 (_let_9 _let_10))) (= (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))))) _let_5))) _let_2)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 (_let_4 (c_2Esum_2EINL_2E1 _let_5))) (_let_4 (c_2Esum_2EINL_2E1 _let_2))))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (((F1 V1i) V2j) V0n)))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_4 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_3)) (c_2Epair_2EUNCURRY_2E1 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Eiseg_2E2 _let_3) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) c_2Ewellorder_2Eiseg_2E0)) _let_3))) _let_1))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0R_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellfounded_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (c_2Epair_2ECURRY_2E1 _let_1)))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V0y_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_4) _let_6))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_2))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellorder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Ewellorder_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Esurj_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Esurj_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27c)) V0f_2E0)) _let_3))) _let_1))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0AB_2E0 u) (V1CD_2E0 u) (V2f_2E0 u) (V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Etransfer_2EFUN__REL_2E4 ((s (_let_2 (_let_1 tyop_2Emin_2Ebool))) V0AB_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) V1CD_2E0)) ((s (_let_2 A_27c)) V2f_2E0)) ((s (_let_1 A_27d)) V3g_2E0)))) (forall ((V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27b) V5b_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s A_27a) V4a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) V0AB_2E0)) _let_3))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) V1CD_2E0)) ((s A_27c) ((app_2E2 ((s (_let_4 A_27c)) V2f_2E0)) _let_3))))) ((s A_27d) ((app_2E2 ((s (_let_2 A_27d)) V3g_2E0)) _let_1)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X3_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27c))) (let ((_let_6 ((s _let_5) X2_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_4 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_7) _let_12))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((((c_2Etransfer_2EFUN__REL_2E4 _let_10) _let_8) _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) c_2Etransfer_2EFUN__REL_2E0)) _let_10))) _let_8))) _let_6))) _let_3))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Etransfer_2Eleft__unique_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1a1_2E0 u) (V2a2_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2a2_2E0))) (let ((_let_3 (_let_1 V1a1_2E0))) (let ((_let_4 ((s A_27b) V3b_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_4)))) (= _let_3 _let_2))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27d))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Etransfer_2EPAIR__REL_2E4 _let_8) _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2Etransfer_2EPAIR__REL_2E0)) _let_8))) _let_6))) _let_4))) _let_2))))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (= (_let_425 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar)) (_let_425 c_2Elist_2EEVERY_2E0)) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Etransfer_2Eright__unique_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1a_2E0 u) (V2b1_2E0 u) (V3b2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b2_2E0))) (let ((_let_3 (_let_1 V2b1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0R_2E0)) ((s A_27a) V1a_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Etransfer_2Etotal_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u)) (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Eleft__unique_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Eleft__unique_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0g_2E0 u) (V7b_2E0 u)) (let ((_let_1 ((s A_27b) V7b_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0g_2E0))) (let ((_let_5 (s A_27d))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (=> (forall ((V1f_2E0 u) (V6a_2E0 u)) (let ((_let_1 ((s A_27a) V6a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2CD_2E0 u) (V3AB_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27c))) (let ((_let_6 (s _let_5))) (=> (forall ((V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27b) V5b_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s A_27a) V4a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) V3AB_2E0)) _let_3))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) V2CD_2E0)) ((s A_27c) ((app_2E2 ((s (_let_4 A_27c)) V1f_2E0)) _let_3))))) ((s A_27d) ((app_2E2 ((s (_let_2 A_27d)) V0g_2E0)) _let_1)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Etransfer_2EFUN__REL_2E4 ((s (_let_4 (_let_1 tyop_2Emin_2Ebool))) V3AB_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) V2CD_2E0)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) F0_2E0)) (_let_6 V1f_2E0)))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) (_let_3 V0g_2E0))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Ebitotal_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Ebitotal_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> (-> Bool Bool) Bool Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Esum__num_2ESUM V0m) V2f)) ((mono_2Ec_2Esum__num_2ESUM V1n) V2f)) (exists ((V3q mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V3q) (not (= (V2f V3q) mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C V3q) V1n))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p))) (= (= ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V1m)) V3f) ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V2n)) V3f)) (or (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1m) (forall ((V5q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0p))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V5q) (_let_1 V1m)) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V2n)) V5q)) (= (V3f V5q) mono_2Ec_2Enum_2E0))))) (and (forall ((V4q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0p))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1m)) V4q) ((mono_2Ec_2Eprim__rec_2E_3C V4q) (_let_1 V2n))) (= (V3f V4q) mono_2Ec_2Enum_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V2n)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_3)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM V0m) V1f) ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) V0m)) V1f))) (and (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6m mono_2Etyop_2Enum_2Enum) (V7f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6m)))) (let ((_let_2 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V5n))) (= ((mono_2Ec_2Esum__num_2EGSUM (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6m)))) V7f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2EGSUM (_let_2 _let_1)) V7f)) (V7f ((mono_2Ec_2Earithmetic_2E_2B V5n) _let_1))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum) (V4f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3m)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_3 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2n))) (= ((mono_2Ec_2Esum__num_2EGSUM (_let_3 _let_1)) V4f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2EGSUM (_let_3 _let_2)) V4f)) (V4f ((mono_2Ec_2Earithmetic_2E_2B V2n) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0n) mono_2Ec_2Enum_2E0)) V1f) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V2n) (not (= (V3f ((mono_2Ec_2Earithmetic_2E_2B V0p) V2n)) mono_2Ec_2Enum_2E0))) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V1m)) V3f)) ((mono_2Ec_2Esum__num_2EGSUM (_let_1 (mono_2Ec_2Enum_2ESUC V2n))) V3f))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (=> (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) ((V0P ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1n) mono_2Ec_2Enum_2E0)) V2f)) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4m mono_2Etyop_2Enum_2Enum) (V5f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V3n))) (=> ((V0P (_let_1 V4m)) V5f) ((V0P (_let_1 (mono_2Ec_2Enum_2ESUC V4m))) V5f))))) (forall ((V6v mono_2Etyop_2Enum_2Enum) (V7v1 mono_2Etyop_2Enum_2Enum) (V8v2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) ((V0P ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V6v) V7v1)) V8v2)))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0f) (V0f mono_2Ec_2Enum_2E0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2g (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Esum__num_2ESUM V0n))) (=> (forall ((V3x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3x) V0n) (= (V1f V3x) (V2g V3x)))) (= (_let_1 V1f) (_let_1 V2g))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Edec2enc_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum) (V4f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2n))) (= ((mono_2Ec_2Esum__num_2EGSUM (_let_1 (mono_2Ec_2Enum_2ESUC V3m))) V4f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V3m)) V4f)) (V4f ((mono_2Ec_2Earithmetic_2E_2B V2n) V3m)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0n) mono_2Ec_2Enum_2E0)) V1f) mono_2Ec_2Enum_2E0))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (forall ((V3m mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3m) ((mono_2Ec_2Earithmetic_2E_2B V0p) V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0p) V3m)) (= (V2f V3m) mono_2Ec_2Enum_2E0))) (= ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p) V1n)) V2f) mono_2Ec_2Enum_2E0))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (and (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM mono_2Ec_2Enum_2E0) V0f) mono_2Ec_2Enum_2E0)) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM (mono_2Ec_2Enum_2ESUC V1m)) V2f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2ESUM V1m) V2f)) (V2f V1m))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (=> (not (= V1n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1n))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (not (= V2n mono_2Ec_2Enum_2E0)))) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V3n) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V3n))) (forall ((V5n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V5n) (not (= V5n mono_2Ec_2Enum_2E0)))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V4n) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V4n)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (or (and (forall ((V4q mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V4q) V0m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V4q)) (= (V2f V4q) mono_2Ec_2Enum_2E0))) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (forall ((V3q mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3q) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V3q)) (= (V2f V3q) mono_2Ec_2Enum_2E0))))) (= ((mono_2Ec_2Esum__num_2ESUM V0m) V2f) ((mono_2Ec_2Esum__num_2ESUM V1n) V2f)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod _let_2) _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Eone_2Eone V0) V1))) (_let_2 ((c_2EDecode_2Ewf__decoder_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_2) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 _let_4))) _let_4)))))) (= (_let_424 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_424 c_2Elist_2EMAP_2E0)) (= (_let_423 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar)) (_let_423 c_2Elist_2EAPPEND_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (or (mono_2Ec_2Estring_2EisAlpha V0c) (mono_2Ec_2Estring_2EisDigit V0c)) (mono_2Ec_2Estring_2EisAlphaNum V0c))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Estring_2EORD V0c))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_2)))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_3)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2E_3C_3D _let_1))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (mono_2Ec_2Estring_2EisHexDigit V0c) (or (and ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_6))))) _let_1) (_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 _let_6)))))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) _let_1) (_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 _let_3)))))) (and (_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_2)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL _let_4)) _let_1))))))))))) (= (_let_422 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_422 c_2Epair_2Epair__CASE_2E0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V3c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3c))) (and (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V2s) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) V2s) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar (_let_1 V1s1)) V0s2) (_let_1 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V1s1) V0s2))) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) V2s) V2s)))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Estring_2Estring__ge V0s1) V1s2) ((mono_2Ec_2Estring_2Estring__le V1s2) V0s1))) (= (_let_421 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (_let_421 c_2Epair_2EUNCURRY_2E0)) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (exists ((V2f_2E0 u) (V3g_2E0 u)) (and (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V2f_2E0)) _let_2)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) ((s (_let_5 tyop_2Emin_2Ebool)) V1t_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_5 A_27a)) V3g_2E0)) _let_4)) _let_2)))))))))) (forall ((V5y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V5y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s A_27a) ((app_2E2 ((s (_let_4 A_27a)) V3g_2E0)) _let_3)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) V1t_2E0)))) (and (= (_let_2 ((app_2E2 ((s (_let_1 A_27b)) V2f_2E0)) _let_5)) _let_3) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (= (_let_419 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (_let_419 c_2Eoption_2ESOME_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (= (_let_418 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Emin_2Ebool)) (_let_418 c_2Eoption_2Eoption__CASE_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1))) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((A_27x d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (F0 V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))) (exists ((V0rep (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar F0) V0rep)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (= (_let_417 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_417 c_2Elist_2ENIL_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((V0P_27 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (and (forall ((V1P (-> mono_2Etyop_2Estring_2Echar Bool))) ((V0P_27 V1P) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) (forall ((V2P (-> mono_2Etyop_2Estring_2Echar Bool)) (V3h mono_2Etyop_2Estring_2Echar) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (forall ((V7l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V8r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (= ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V7l) V8r) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t))) (not (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V8r)) (not (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V7l))) ((V0P_27 V2P) (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V8r)))) (forall ((V5l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V6r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (= ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V5l) V6r) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t))) (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V5l)) ((V0P_27 V2P) (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V6r))))) ((V0P_27 V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t))))) (forall ((V9v (-> mono_2Etyop_2Estring_2Echar Bool)) (V10v1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P_27 V9v) V10v1)))) (forall ((V0P_27 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (and (forall ((V1P (-> mono_2Etyop_2Estring_2Echar Bool))) ((V0P_27 V1P) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) (forall ((V2P (-> mono_2Etyop_2Estring_2Echar Bool)) (V3h mono_2Etyop_2Estring_2Echar) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (forall ((V7l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V8r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (not (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V7l)) (= ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V7l) V8r) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t)))) ((V0P_27 V2P) V8r))) (forall ((V5l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V6r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (and (= ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V5l) V6r) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t))) (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V5l)) ((V0P_27 V2P) (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V6r))))) ((V0P_27 V2P) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h) V4t))))) (forall ((V9v (-> mono_2Etyop_2Estring_2Echar Bool)) (V10v1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P_27 V9v) V10v1)))) (forall ((V0a mono_2Etyop_2Estring_2Echar) (V1b mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Echar__lt V0a) V1b) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Estring_2EORD V0a)) (mono_2Ec_2Estring_2EORD V1b)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 mono_2Etyop_2Estring_2Echar) (V2 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V1))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V2))))))) (= (_let_416 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_416 c_2Erelation_2EWFREC_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 (((c_2Ewellorder_2Ewo2wo_2E3 _let_5) _let_3) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Ewellorder_2Ewo2wo_2E0)) _let_5))) _let_3))) _let_1))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun (_let_3 (_let_2 tyop_2Estring_2Echar))) tyop_2Estring_2Echar)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_2 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_414 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (_let_414 c_2Epair_2Epair__CASE_2E0)) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (= V1s1 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (and (= (= V0s ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V1s1) V0s)) _let_1) (= (= V0s ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0s) V1s1)) _let_1)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)) (forall ((F4 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (F3 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (F2 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (F1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (F0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool))) (=> (forall ((V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5i mono_2Etyop_2Enum_2Enum) (V7n mono_2Etyop_2Enum_2Enum)) (= (((F4 V3s) V5i) V7n) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Estring_2ESUBSTRING ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V3s) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V5i) V7n)))))) (=> (forall ((V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5i mono_2Etyop_2Enum_2Enum) (V6v3 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (((F3 V3s) V5i) V6v3) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V6v3) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Estring_2ESUBSTRING ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V3s) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V5i) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V3s)) V5i)))))) ((F4 V3s) V5i)))) (=> (forall ((V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V4v1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (= ((F2 V3s) V4v1) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V4v1) (F3 V3s)))) (=> (forall ((V1EXTRACT (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V2a mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (= ((F1 V1EXTRACT) V2a) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V2a) F2))) (=> (forall ((V0R (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (= (F0 V0R) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0R))) (= mono_2Ec_2Estring_2EEXTRACT ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 F0)) F1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s (_let_2 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 ((s (_let_1 (_let_2 ((tyop_2Emin_2Efun (_let_2 (_let_1 tyop_2Estring_2Echar))) tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0) V1))) (_let_3 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod _let_1) _let_2)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_2) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2EtoUpper V0c) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2EisLower V0c)) (mono_2Ec_2Estring_2ECHR ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Estring_2EORD V0c)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) V0c))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_3 (s (_let_1 (_let_2 ((tyop_2Emin_2Efun (_let_2 (_let_1 tyop_2Estring_2Echar))) tyop_2Estring_2Echar)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0s1) V1s2) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar) V1s2) (mono_2Ec_2Estring_2EEXPLODE V0s1)))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (= (_let_413 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar)) (_let_413 c_2Elist_2ECONS_2E0)) (= (_let_412 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_412 c_2Eoption_2ENONE_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0c1 mono_2Etyop_2Estring_2Echar) (V1c2 mono_2Etyop_2Estring_2Echar)) (= (= (mono_2Ec_2Estring_2EORD V0c1) (mono_2Ec_2Estring_2EORD V1c2)) (= V0c1 V1c2))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2EtoLower V0c) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2EisUpper V0c)) (mono_2Ec_2Estring_2ECHR ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Estring_2EORD V0c)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) V0c))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0cs mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (exists ((V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= V0cs (mono_2Ec_2Estring_2EEXPLODE V1s)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u) (X4_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X4_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X3_2E0))) (let ((_let_6 (_let_4 X2_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) X1_2E0))) (let ((_let_11 (_let_8 _let_3))) (let ((_let_12 ((s _let_11) X0_2E0))) (let ((_let_13 (tyop_2Emin_2Efun _let_3))) (let ((_let_14 (_let_13 _let_7))) (let ((_let_15 (_let_13 _let_14))) (let ((_let_16 ((tyop_2Emin_2Efun _let_9) _let_15))) (= (_let_1 (((((c_2Ebft_2EBFT_2E5 _let_12) _let_10) _let_6) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_16)) c_2Ebft_2EBFT_2E0)) _let_12))) _let_10))) _let_6))) _let_5))) _let_2)))))))))))))))))))) (= (_let_411 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_411 c_2Elist_2EFOLDR_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 _let_2))) _let_2)))) (= (_let_408 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_408 c_2Elist_2ECONS_2E0)) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_2) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Estring_2EORD V0c))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (= (mono_2Ec_2Estring_2EisLower V0c) (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))))))) _let_1)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Estring_2EEXPLODE V0s))) (let ((_let_2 (= V0s mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (and (= (= _let_1 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) _let_2) (= _let_2 (= mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar _let_1)))))) (forall ((A_27a d) (V0G_2E0 u) (V1f_2E0 u) (V2seen_2E0 u) (V3fringe_2E0 u) (V4acc_2E0 u) (V5a_2E0 u) (V6b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6b_2E0))) (let ((_let_4 (_let_2 V5a_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 ((s (_let_5 _let_1)) V0G_2E0))) (let ((_let_9 ((((c_2Ebft_2EBFT_2E5 _let_8) _let_7) (_let_2 V2seen_2E0)) (_let_2 V3fringe_2E0)))) (let ((_let_10 (_let_2 V4acc_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_5 tyop_2Emin_2Ebool)) (c_2EdirGraph_2EParents_2E1 _let_8))))) (= _let_7 (_let_6 c_2Elist_2ECONS_2E0)) (= _let_10 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))) (= (_let_2 (_let_9 _let_10)) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_9 _let_4))) _let_3))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_3 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_2 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (= V0l mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (let ((_let_2 (mono_2Ec_2Estring_2EIMPLODE V0l))) (and (= _let_1 (= _let_2 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) (= (= mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar _let_2) _let_1))))) (= (_let_407 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar)) (_let_407 c_2Elist_2ELENGTH_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (= (_let_406 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_406 c_2Eoption_2Eoption__CASE_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (let ((_let_2 (mono_2Ec_2Estring_2EORD V0c))) (= (mono_2Ec_2Estring_2EisCntrl V0c) (or ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))))) _let_2) ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1)))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (= (_let_405 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (_let_405 c_2Ebool_2ECOND_2E0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (= (_let_403 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (_let_403 c_2Epair_2Epair__CASE_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) tyop_2Estring_2Echar))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_2)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_1)) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Ecombin_2EI_2E1 (_let_1 (i_mono_2Etyop_2Estring_2Echar V0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_4))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0cs2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1cs1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= (mono_2Ec_2Estring_2EIMPLODE V1cs1) (mono_2Ec_2Estring_2EIMPLODE V0cs2)) (= V1cs1 V0cs2))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EDecode_2Edec2enc_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EDecode_2Edec2enc_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 (_let_3 _let_2))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_402 (i_mono_2Etyop_2Estring_2Echar mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Estring_2Echar)) (_let_402 c_2Ebool_2EARB_2E0)) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_3E_20255 Bool) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Estring_2ECHR V1n))) (= (mono_2Ec_2Estring_2EORD _let_1) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) V1n) (((mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Estring_2EORD) V0_3E_20255) _let_1))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2ECURRY_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Epair_2ECURRY_2E0)) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Estring_2EORD V0c))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (= (mono_2Ec_2Estring_2EisPrint V0c) (and ((mono_2Ec_2Eprim__rec_2E_3C _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_2))) _let_1)))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (_let_2 (_let_2 (tyop_2Elist_2Elist _let_1))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (= (_let_401 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29)) (_let_401 c_2Emin_2E_40_2E0)) (forall ((V0r mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2Estring_2EORD (mono_2Ec_2Estring_2ECHR V0r)) V0r) ((mono_2Ec_2Eprim__rec_2E_3C V0r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_2 (_let_1 (_let_2 (_let_1 tyop_2Emin_2Ebool))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2EDecode_2Ewf__decoder_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Estring_2EORD V0c))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_2)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_2)))))) _let_1)) (mono_2Ec_2Estring_2EisDigit V0c))))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0l1) V1l2)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0l1)) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V1l2)))) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2Echar__size V0c) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_2) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 V0))) V0)))) (= (_let_400 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_400 c_2Epair_2E_2C_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= (_let_237 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_237 c_2Ecombin_2EI_2E0)) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Estring_2EORD V0c))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= (mono_2Ec_2Estring_2EisSpace V0c) (or (= _let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_2)))))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_2)))) _let_1))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u) (V3e_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V2w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3e_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_3 V0y_2E0))) (let ((_let_8 (_let_3 V1x_2E0))) (let ((_let_9 (c_2Ebool_2EIN_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_8) _let_7))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_2)))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2))))))) (and (= _let_7 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_8) _let_11))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_4) _let_11)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 ((c_2Ewellorder_2EADD1_2E2 _let_4) _let_2)))))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Estring_2ESUB ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum V0s) V1n)) ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Estring_2Echar V1n) V0s))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0A_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2l3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0l1))) (= (_let_1 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V1l2) V2l3)) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar (_let_1 V1l2)) V2l3)))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod _let_1) _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Errestrict_2E0)) _let_5))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (and (forall ((V1l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V3h mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3h))) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar (_let_1 V1l1)) V2l2) (_let_1 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V1l1) V2l2))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) V0l) V0l))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (not (and ((mono_2Ec_2Estring_2Estring__lt V1t) V0s) ((mono_2Ec_2Estring_2Estring__lt V0s) V1t)))) (= (_let_399 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (_let_399 c_2Ebool_2ELET_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_2)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_2) _let_1))) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (and (= (mono_2Ec_2Estring_2EIMPLODE V0s) V0s) (= (mono_2Ec_2Estring_2EEXPLODE V0s) V0s))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_1))) _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0P (-> mono_2Etyop_2Estring_2Echar Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (V0P (mono_2Ec_2Estring_2ECHR V1n)))) (forall ((V2c mono_2Etyop_2Estring_2Echar)) (V0P V2c)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1)))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_397 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (_let_397 c_2Epair_2E_2C_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (j_mono_2Etyop_2Estring_2Echar _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (_let_3 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_2)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_2) _let_1))) _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1) V2))) (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_2)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))) ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V2))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0) V1))) (_let_4 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_1))) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (= (_let_396 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar)) (_let_396 c_2Ebool_2ECOND_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0P (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (forall ((V1s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> (forall ((V3c mono_2Etyop_2Estring_2Echar) (V4t1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5t2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V3c))) (=> (and (= (mono_2Ec_2Estring_2EDEST__STRING V1s1) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (_let_1 V4t1))) (= (mono_2Ec_2Estring_2EDEST__STRING V2s2) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (_let_1 V5t2)))) ((V0P V4t1) V5t2)))) ((V0P V1s1) V2s2))) (forall ((V6v mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V7v1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P V6v) V7v1)))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2EisAscii V0c) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Estring_2EORD V0c)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Ecombin_2EFAIL_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (s (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V2))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_395 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (_let_395 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (= (_let_394 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum)) (_let_394 c_2Epair_2E_2C_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Estring_2EORD V0c))) (= (mono_2Ec_2Estring_2EisUpper V0c) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))))))) _let_2) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 _let_1)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (exists ((V1wo_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1wo_2E0))) (_let_1 V0s_2E0))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c))) (let ((_let_2 (= V2l (_let_1 (mono_2Ec_2Estring_2EEXPLODE V1s))))) (let ((_let_3 (mono_2Ec_2Estring_2EIMPLODE V2l))) (let ((_let_4 (_let_1 V1s))) (and (= _let_2 (= _let_3 _let_4)) (= (= _let_4 _let_3) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Estring_2Echar))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Estring_2Echar))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= (_let_393 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar)) (_let_393 c_2Ecombin_2EI_2E0)) (= (_let_391 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (_let_391 c_2Epair_2E_2C_2E0)) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (_let_2 (_let_2 (tyop_2Elist_2Elist _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1) V2))) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1c mono_2Etyop_2Estring_2Echar)) (let ((_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V1c) V0s))) (and (not (= V0s _let_1)) (not (= _let_1 V0s))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Estring_2Echar) (V2 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Estring_2Echar))) (= (_let_2 (i_mono_2Etyop_2Estring_2Echar (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar V0) V1) V2))) (_let_2 (((c_2Elist_2Elist__CASE_2E3 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_2 (i_mono_2Etyop_2Estring_2Echar V1))) ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0c mono_2Etyop_2Estring_2Echar)) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Estring_2EORD V0c)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_2) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1a_2E0 u) (V2a_27_2E0 u) (V3b_2E0 u) (V4b_27_2E0 u) (V5c_2E0 u) (V6c_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6c_27_2E0))) (let ((_let_3 (_let_1 V4b_27_2E0))) (let ((_let_4 (_let_1 V2a_27_2E0))) (let ((_let_5 (c_2Esorting_2EPERM_2E2 (_let_1 V0x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V1a_2E0))) (let ((_let_8 (_let_1 V3b_2E0))) (let ((_let_9 (_let_1 V5c_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_8))) _let_9))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_9) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_8) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_7) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1ls_2E0 u) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (c_2Esorting_2ESORTED_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2Etransitive_2E1 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s _let_4) V2P_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_1 V1l1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 (_let_4 (_let_3 _let_5))) (_let_4 (_let_3 _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 ((c_2Esorting_2EQSORT_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_5 _let_3))) (_let_1 (_let_5 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esorting_2EQSORT_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Esorting_2EQSORT_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 (c_2Elist_2ESET__TO__LIST_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Esorting_2EQSORT_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V0l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_4)) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))) (forall ((A_27a d)) (and (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET))) (forall ((V3y_2E0 u) (V4x_2E0 u) (V5rst_2E0 u) (V6R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3y_2E0))) (let ((_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) (_let_1 V5rst_2E0))))) (let ((_let_5 (_let_2 V4x_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_6 _let_7)) V6R_2E0))) (let ((_let_9 (c_2Esorting_2ESORTED_2E2 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_5))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))))))))))))))))) (forall ((V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V2R_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) mono_2Ec_2Ebool_2ET)))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2a mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (= (((F0 V0f) V2a) V3m) ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum (V0f V3m)) (mono_2Ec_2Epred__set_2Ecount V2a)))) (=> (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2a mono_2Etyop_2Enum_2Enum) (V4m mono_2Etyop_2Enum_2Enum)) (= (((F1 V0f) V2a) V4m) ((V0f ((mono_2Ec_2Earithmetic_2EDIV V4m) V2a)) ((mono_2Ec_2Earithmetic_2EMOD V4m) V2a)))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1b mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum ((F0 V0f) V2a)) (mono_2Ec_2Epred__set_2Ecount V1b)) ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum ((F1 V0f) V2a)) (mono_2Ec_2Epred__set_2Ecount ((mono_2Ec_2Earithmetic_2E_2A V2a) V1b)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Esorting_2ESTABLE_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Esorting_2ESTABLE_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Emin_2E_3D_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Emin_2E_3D_2E0)) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2R_2E0 u) (V0hd_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V0hd_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (forall ((V0hd_2E0 u) (V1l_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2Etransitive_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2ESORTED_2E2 _let_6) (_let_1 ((c_2Elist_2EFILTER_2E2 ((s _let_3) ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) ((s A_27a) V0hd_2E0)))) (_let_1 V1l_2E0))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u) (V4p_2E0 u) (V5q_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V2l1_2E0))) (let ((_let_6 (_let_2 V1L_2E0))) (let ((_let_7 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_6)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_5))))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3)))))) (let ((_let_8 (_let_2 V4p_2E0))) (let ((_let_9 (_let_2 V5q_2E0))) (let ((_let_10 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (= (_let_10 ((c_2Epair_2E_2C_2E2 _let_8) _let_9)) (_let_10 ((((c_2Esorting_2EPART_2E4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_6) _let_5) _let_3))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_9)))) _let_7) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_8)))) _let_7)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1Q_2E0))) (let ((_let_6 (_let_4 V0P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) F0_2E0)) _let_6))) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_6) _let_2))) (_let_1 ((c_2Elist_2EFILTER_2E2 _let_5) _let_2)))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Epair_2Eprod _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2A_2E0 u) (V3B_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (and (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V4l1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))) (forall ((V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V5l2_2E0)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (= (_let_3 ((c_2Epair_2E_2C_2E2 (_let_2 V2A_2E0)) (_let_2 V3B_2E0))) (_let_3 ((((c_2Esorting_2EPART_2E4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 V1L_2E0)) (_let_2 V4l1_2E0)) (_let_2 V5l2_2E0))))) (and (forall ((V9z_2E0 u)) (let ((_let_1 ((s A_27a) V9z_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V3B_2E0)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (forall ((V8z_2E0 u)) (let ((_let_1 ((s A_27a) V8z_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2A_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etotal_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2ESTABLE_2E2 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_4) _let_4))) c_2Esorting_2EQSORT3_2E0)) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 _let_3) (_let_1 ((c_2Esorting_2EQSORT3_2E2 _let_3) (_let_1 V1L_2E0)))))))))))) (forall ((A_27a d) (V0x3_2E0 u) (V1x2_2E0 u) (V2x1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1x2_2E0))) (let ((_let_3 (_let_1 V0x3_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_1 V2x1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_2))) _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0P_2E0)) _let_2))) _let_2))) (forall ((V8l1_2E0 u) (V9l2_2E0 u) (V10l3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V10l3_2E0))) (let ((_let_4 (_let_2 V8l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_5 _let_6)) V0P_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (app_2E2 (_let_8 (_let_7 _let_4))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_2 V9l2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Esorting_2EPERM_2E2 _let_4) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 (_let_7 _let_11))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Esorting_2EPERM_2E2 _let_11) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_11)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_3)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6l1_2E0 u) (V7l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7l2_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_4 V4x_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V5y_2E0)))) (let ((_let_7 (_let_2 V6l1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s (_let_8 _let_9)) V0P_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Esorting_2EPERM_2E2 _let_7) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_2 (_let_5 (_let_2 (_let_6 _let_7))))))) (_let_2 (_let_6 (_let_2 (_let_5 _let_3))))))))))))))))))))) (forall ((V1x_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_5 (_let_2 V2l1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s (_let_6 _let_7)) V0P_2E0)))) (let ((_let_9 (s _let_7))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_8 _let_5))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Esorting_2EPERM_2E2 _let_5) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_8 (_let_2 (_let_4 _let_5))))) (_let_2 (_let_4 _let_3)))))))))))))))))) (forall ((V11l1_2E0 u) (V12l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V12l2_2E0))) (let ((_let_4 (_let_2 V11l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V0P_2E0)) _let_4))) _let_3)))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eantisymmetric_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l2_2E0))) (let ((_let_4 (_let_2 V1l1_2E0))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_2 (_let_5 _let_3)))))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Epair_2Eprod _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (s _let_1))) (= (_let_8 ((c_2Ebool_2ELET_2E2 _let_7) _let_4)) (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) c_2Ebool_2ELET_2E0)) _let_7))) _let_4)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2l3_2E0 u) (V3l4_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l4_2E0))) (let ((_let_4 (_let_2 V2l3_2E0))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V1l2_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_2 V0l1_2E0))) (=> (= (_let_6 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_4))))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_3)))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1M_2E0 u) (V2N_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2N_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_5 (_let_2 V1M_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (c_2Erelation_2ETC_2E3 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) c_2Esorting_2EPERM__SINGLE__SWAP_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_2 (_let_4 _let_5))) (_let_2 (_let_4 _let_3))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Erelation_2Einv__image_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Einv__image_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1A_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V0n)))) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Esorting_2ESORTED_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2E_3C_3D) (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l1_2E0))) (let ((_let_4 (_let_2 V1l2_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_4)))) (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (and (forall ((V2x1_2E0 u) (V3x2_2E0 u) (V4x3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3x2_2E0))) (let ((_let_4 (_let_2 V4x3_2E0))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V2x1_2E0)))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) V0f_2E0)))) (let ((_let_7 (s A_27b))) (let ((_let_8 (tyop_2Emin_2Efun A_27b))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) V1Q_2E0)) (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_3))) _let_4))))))) (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_4))) _let_3))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1Q_2E0))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6y_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_2 V5x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Esorting_2EPERM_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V1Q_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_3))))))))))))))))))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (=> ((mono_2Ec_2Esorting_2EPERM_2Emono_2Etyop_2Enum_2Enum V0l1) V1l2) (= (mono_2Ec_2Elist_2ESUM V0l1) (mono_2Ec_2Elist_2ESUM V1l2)))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_1))) (_let_2 V1l_2E0))))) (= _let_3 (_let_2 ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))) _let_1))))))) (forall ((A_27a d)) (and (forall ((V0l_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_5 _let_3))) (_let_1 (_let_5 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))) (forall ((V3l_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l2_2E0))) (let ((_let_3 (_let_1 V4l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V3l_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_5))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2ESORTED_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Esorting_2ESORTED_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ETC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ETC_2E0)) _let_4)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2EASCIInumbers_2Enum__from__dec__string (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V0n)) V0n)) (forall ((A_27a d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_27_2E0))) (let ((_let_4 (_let_2 V1l1_27_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V2l2_2E0))) (let ((_let_7 (_let_2 V0l1_2E0))) (=> (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_5 (c_2Esorting_2EPERM_2E1 _let_4))) (=> (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_6)) (_let_5 (c_2Esorting_2EPERM_2E1 _let_3))) (= (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_6)))) (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Epair_2Eprod _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X2_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_11))) (= (_let_5 (((c_2Epair_2E_23_23_2E3 _let_10) _let_8) _let_6)) (_let_5 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_12)) c_2Epair_2E_23_23_2E0)) _let_10))) _let_8))) _let_6)))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eequivalence_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Esorting_2EPERM_2E0)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2EEQC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2EEQC_2E0)) _let_4)))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1x1_2E0 u) (V2x2_2E0 u) (V3x3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2x2_2E0))) (let ((_let_4 (_let_2 V3x3_2E0))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V1x1_2E0)))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_3))) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_4))) _let_3)))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5y_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V4x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (=> (and (forall ((V8l1_2E0 u) (V9l2_2E0 u) (V10l3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V10l3_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0P_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 (_let_2 V8l1_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_2 V9l2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 (_let_6 _let_10))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6l1_2E0 u) (V7l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7l2_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_4 V4x_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V5y_2E0)))) (let ((_let_7 (_let_2 V6l1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s (_let_8 _let_9)) V0P_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_2 (_let_5 (_let_2 (_let_6 _let_7))))))) (_let_2 (_let_6 (_let_2 (_let_5 _let_3))))))))))))))))))))) (forall ((V1x_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_5 (_let_2 V2l1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s (_let_6 _let_7)) V0P_2E0)))) (let ((_let_9 (s _let_7))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_8 _let_5))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_8 (_let_2 (_let_4 _let_5))))) (_let_2 (_let_4 _let_3))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0P_2E0)) _let_2))) _let_2)))) (forall ((V11l1_2E0 u) (V12l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V12l2_2E0))) (let ((_let_4 (_let_2 V11l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V0P_2E0)) _let_4))) _let_3)))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_4 V0x_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V1y_2E0)))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_7 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 (_let_6 _let_3)))))) (_let_7 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_6 (_let_2 (_let_5 _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((s A_27a) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Epair_2Eprod _let_1))) (let ((_let_8 (_let_7 (_let_7 _let_1)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 (_let_4 _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Esorting_2EPART3_2E3 _let_6) _let_3) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) c_2Esorting_2EPART3_2E0)) _let_6))) _let_3))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ESET__TO__LIST_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ESET__TO__LIST_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u) (V1R_27_2E0 u) (V2ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))))) (=> (and (not (= _let_3 _let_2)) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_9)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1R_27_2E0)) _let_3))) _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 (_let_3 V0R_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 (_let_3 V1R_27_2E0)) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Esorting_2ESORTS_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Esorting_2ESORTS_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u) (F2_2E0 u)) (=> (forall ((V0R_2E0 u) (V2hd_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (_let_1 V2hd_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F1_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V2hd_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V2hd_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V2hd_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (_let_1 V2hd_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F2_2E0)) _let_8))) _let_3))) _let_2))))))))))))))) (forall ((V0R_2E0 u) (V1tl_2E0 u) (V2hd_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1tl_2E0))) (let ((_let_4 ((s A_27a) V2hd_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V0R_2E0))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_7) _let_7)))) (let ((_let_11 (s _let_6))) (let ((_let_12 (tyop_2Epair_2Eprod _let_1))) (let ((_let_13 (_let_12 _let_1))) (let ((_let_14 (s (_let_12 _let_13)))) (= (_let_14 (((c_2Esorting_2EPART3_2E3 _let_9) _let_4) _let_3)) (_let_14 ((c_2Epair_2E_2C_2E2 (_let_2 ((c_2Elist_2EFILTER_2E2 (_let_11 ((app_2E2 (_let_8 ((app_2E2 (_let_10 F0_2E0)) _let_9))) _let_4))) _let_3))) ((s _let_13) ((c_2Epair_2E_2C_2E2 (_let_2 ((c_2Elist_2EFILTER_2E2 (_let_11 ((app_2E2 (_let_8 ((app_2E2 (_let_10 F1_2E0)) _let_9))) _let_4))) _let_3))) (_let_2 ((c_2Elist_2EFILTER_2E2 (_let_11 ((app_2E2 (_let_8 ((app_2E2 (_let_10 F2_2E0)) _let_9))) _let_4))) _let_3)))))))))))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u) (V4p_2E0 u) (V5q_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5q_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V4p_2E0))) (let ((_let_6 (_let_2 V3l2_2E0))) (let ((_let_7 (_let_2 V2l1_2E0))) (let ((_let_8 (_let_2 V1L_2E0))) (let ((_let_9 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (= (_let_9 ((c_2Epair_2E_2C_2E2 _let_5) _let_3)) (_let_9 ((((c_2Esorting_2EPART_2E4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_8) _let_7) _let_6))) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_8)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_7))))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_6)))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0a mono_2Etyop_2Estring_2Echar)) (exists ((V1r mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V1r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (= V0a (mono_2Ec_2Estring_2ECHR V1r))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l1_27_27_2E0 u) (V3l2_2E0 u) (V4l2_27_2E0 u) (V5l2_27_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l2_27_27_2E0))) (let ((_let_3 (_let_1 V2l1_27_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V3l2_2E0))) (let ((_let_6 (c_2Esorting_2EPERM_2E2 (_let_1 V0l1_2E0)))) (let ((_let_7 (_let_1 V4l2_27_2E0))) (let ((_let_8 (_let_1 V1l1_27_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_8) _let_3))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_5) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_8) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_2 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (forall ((V1R_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V1R_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))) (forall ((V2R_2E0 u) (V3hd_2E0 u) (V4tl_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (forall ((V5lo_2E0 u) (V6eq_2E0 u) (V7hi_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7hi_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V2R_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Epair_2Eprod _let_1))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (s (_let_8 _let_9)))) (=> (= (_let_10 ((c_2Epair_2E_2C_2E2 (_let_2 V5lo_2E0)) ((s _let_9) ((c_2Epair_2E_2C_2E2 (_let_2 V6eq_2E0)) _let_3)))) (_let_10 (((c_2Esorting_2EPART3_2E3 _let_6) ((s A_27a) V3hd_2E0)) (_let_2 V4tl_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) V0P_2E0)) _let_6))) _let_3))))))))))))))) (forall ((V8lo_2E0 u) (V9eq_2E0 u) (V10hi_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8lo_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V2R_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Epair_2Eprod _let_1))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (s (_let_8 _let_9)))) (=> (= (_let_10 ((c_2Epair_2E_2C_2E2 _let_3) ((s _let_9) ((c_2Epair_2E_2C_2E2 (_let_2 V9eq_2E0)) (_let_2 V10hi_2E0))))) (_let_10 (((c_2Esorting_2EPART3_2E3 _let_6) ((s A_27a) V3hd_2E0)) (_let_2 V4tl_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) V0P_2E0)) _let_6))) _let_3)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) V0P_2E0)) ((s _let_4) V2R_2E0)))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3hd_2E0)) (_let_2 V4tl_2E0)))))))))))))) (forall ((V11v_2E0 u) (V12v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V11v_2E0)))) ((s _let_1) V12v1_2E0))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1x1_2E0 u) (V2x2_2E0 u) (V3x3_2E0 u)) (exists ((V4x1_27_2E0 u) (V5x2_27_2E0 u) (V6x3_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5x2_27_2E0))) (let ((_let_4 (_let_2 V6x3_27_2E0))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V4x1_27_2E0)))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2x2_2E0))) (let ((_let_9 (_let_7 V3x3_2E0))) (let ((_let_10 (c_2Elist_2EAPPEND_2E2 (_let_7 V1x1_2E0)))) (let ((_let_11 (app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_1)) V0f_2E0)))) (and (= (_let_2 (_let_11 (_let_7 ((c_2Elist_2EAPPEND_2E2 (_let_7 (_let_10 _let_8))) _let_9)))) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_3))) _let_4))) (= (_let_2 (_let_11 (_let_7 ((c_2Elist_2EAPPEND_2E2 (_let_7 (_let_10 _let_9))) _let_8)))) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_4))) _let_3))))))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8y_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (_let_2 V7x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Esorting_2EPERM_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Esorting_2EPERM_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_3))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_2) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V2ord_2E0 u) (V3h_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5l2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V2ord_2E0))) (let ((_let_7 (c_2Esorting_2EQSORT_2E2 _let_6))) (let ((_let_8 ((s A_27a) V3h_2E0))) (let ((_let_9 (_let_2 V4l1_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (_let_10 _let_1))) (let ((_let_12 (_let_10 _let_11))) (let ((_let_13 (_let_4 _let_12))) (= (_let_2 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_13)) F0_2E0)) _let_6))) _let_8))) _let_9))) _let_3)) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_7 _let_9))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_8) (_let_2 c_2Elist_2ENIL_2E0)))))) (_let_2 (_let_7 _let_3))))))))))))))))))) (=> (forall ((V2ord_2E0 u) (V3h_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3h_2E0))) (let ((_let_3 (_let_1 V6y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2ord_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F1_2E0)) _let_8))) _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2))))))))))))))) (and (forall ((V1t_2E0 u) (V2ord_2E0 u) (V3h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 ((s A_27a) V3h_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V2ord_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_7))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_12 (tyop_2Emin_2Efun _let_1))) (let ((_let_13 (_let_12 (_let_12 _let_1)))) (let ((_let_14 (_let_5 _let_13))) (= (_let_2 ((c_2Esorting_2EQSORT_2E2 _let_9) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_1)) (c_2Epair_2EUNCURRY_2E1 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_9))) _let_4))))) ((s _let_11) ((c_2Esorting_2EPARTITION_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s (_let_10 _let_7)) F1_2E0)) _let_9))) _let_4))) _let_3)))))))))))))))))))) (forall ((V0ord_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (_let_1 ((c_2Esorting_2EQSORT_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0ord_2E0)) _let_2)) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l1_2E0 u) (V2l1_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l1_27_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1l1_2E0))) (=> (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_6)) (_let_5 (c_2Esorting_2EPERM_2E1 _let_3))) (= (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_6)))) (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_3))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 _let_3) (_let_1 ((c_2Esorting_2EQSORT_2E2 _let_3) (_let_1 V1L_2E0)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0L_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0L_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_1) _let_1))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V2f_2E0 u) (V4y_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V2f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V0s_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_2))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_3) _let_9))) (= (_let_1 ((app_2E2 _let_6) _let_3)) _let_2)))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V2f_2E0 u)) (and (forall ((V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_6 tyop_2Emin_2Ebool)) V1t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebool_2E_3F_21_2E1 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) (_let_5 V0s_2E0)))) ((s _let_3) V2f_2E0)))) _let_1)))))))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 A_27a)) V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etransitive_2E1 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2ESORTED_2E2 _let_5) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2ESORTED_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_5) _let_3))) _let_1)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2ls_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V1R_2E0))) (let ((_let_6 (c_2Esorting_2ESORTED_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2Etransitive_2E1 _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s _let_4) V0P_2E0)) _let_2))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 (_let_2 V1l_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_6 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_6 ((c_2Esorting_2EPARTITION_2E2 _let_5) _let_4)) (_let_6 ((((c_2Esorting_2EPART_2E4 _let_5) _let_4) _let_3) _let_3)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 ((c_2Esorting_2EQSORT3_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Esorting_2EPERM_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ESET__TO__LIST_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2Ecount V0n))) (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Epair_2Eprod _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_3) _let_1)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_2 _let_3)) _let_1))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eequivalence_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eequivalence_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_27_2E0))) (let ((_let_4 (_let_2 V1l1_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V2l2_2E0))) (let ((_let_7 (_let_2 V0l1_2E0))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (=> (= (_let_8 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_8 (c_2Esorting_2EPERM_2E1 _let_4))) (=> (= (_let_8 (c_2Esorting_2EPERM_2E1 _let_6)) (_let_8 (c_2Esorting_2EPERM_2E1 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_7) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_4) _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1L_2E0 u) (V2h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (exists ((V3M_2E0 u) (V4N_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4N_2E0))) (let ((_let_3 (c_2Elist_2EAPPEND_2E2 (_let_1 V3M_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 V0t_2E0)) (_let_1 (_let_3 _let_2))))) (= (_let_1 V1L_2E0) (_let_1 (_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) _let_2)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_1 V0t_2E0)))) (_let_1 V1L_2E0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EdirGraph_2EParents_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EdirGraph_2EParents_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (=> (= (_let_1 (((c_2Ewellorder_2Ewo2wo_2E3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)) ((s A_27a) V2x_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27b) V3y_2E0)))) (forall ((V4x0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V4x0_2E0)) (_let_3 V2x_2E0)))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))))))) (exists ((V5y0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_1 (((c_2Ewellorder_2Ewo2wo_2E3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)) ((s A_27a) V4x0_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27b) V5y0_2E0)))))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0xs_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Esorting_2ESORTED_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V2R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2ELAST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2ELAST_2E0)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2))))))) (forall ((V2s_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V2s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V3f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2))))))))) (forall ((V6s_2E0 u) (V7f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V6s_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V7f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2))))))) (forall ((V10s_2E0 u) (V11f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V10s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V11f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2))))))))) (forall ((V16s_2E0 u) (V17f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V16s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) V17f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2))))))))) (forall ((V20s_2E0 u) (V21f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V20s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s (_let_3 _let_4)))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 ((s _let_4) V21f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2))))))))) (forall ((V22s_2E0 u) (V23f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V22s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) V23f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2))))))))) (forall ((V24s_2E0 u) (V25f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V24s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V25f_2E0))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_4) _let_2)))) (_let_3 ((app_2E2 _let_4) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2)))))))))) (forall ((V26s_2E0 u) (V27f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V26s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V27f_2E0))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_4) _let_2)))) (_let_3 ((app_2E2 _let_4) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2)))))))))) (forall ((V30s_2E0 u) (V31f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V30s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) V31f_2E0))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_6) _let_2)))) (_let_5 ((app_2E2 _let_6) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2)))))))))))) (forall ((V28s_2E0 u) (V29f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V28s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) V29f_2E0))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_6) _let_2)))) (_let_5 ((app_2E2 _let_6) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2)))))))))))) (forall ((V18s_2E0 u) (V19f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V18s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s (_let_3 _let_4)))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 ((s _let_4) V19f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2))))))))) (forall ((V14s_2E0 u) (V15f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V14s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s (_let_3 _let_4)))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 ((s _let_4) V15f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2))))))))) (forall ((V12s_2E0 u) (V13f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V12s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s (_let_3 _let_4)))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 ((s _let_4) V13f_2E0)) _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2))))))))) (forall ((V8s_2E0 u) (V9f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V8s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V9f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2))))))))) (forall ((V4s_2E0 u) (V5f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V4s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V5f_2E0)) _let_2)))) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Esemi__ring_2Esemi__ring__SR0_2E0)) _let_2))))))) (forall ((V0 mono_2Etyop_2Estring_2Echar)) (= (j_mono_2Etyop_2Estring_2Echar ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (V0r_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (and (forall ((V3n_2E0 u) (V4m_2E0 u) (V5p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5p_2E0))) (let ((_let_3 (_let_1 V4m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V3n_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 _let_3) _let_2)))) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))) (forall ((V6n_2E0 u) (V7m_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6n_2E0))) (let ((_let_3 (_let_1 V7m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_4 _let_2) _let_3)) (_let_1 ((_let_4 _let_3) _let_2)))))))) (forall ((V8n_2E0 u) (V9m_2E0 u) (V10p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V10p_2E0))) (let ((_let_3 (_let_1 V9m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V8n_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 _let_3) _let_2)))) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))) (forall ((V12n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V12n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_3) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_3))) _let_2)) _let_2))))) (forall ((V13n_2E0 u)) (let ((_let_1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_1)))) (= (_let_2 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_1) _let_3) (_let_2 V13n_2E0))) _let_3))))) (forall ((V14n_2E0 u) (V15m_2E0 u) (V16p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V16p_2E0))) (let ((_let_3 (_let_1 V15m_2E0))) (let ((_let_4 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_4))) (let ((_let_6 (_let_1 V14n_2E0))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_4))) (= (_let_1 ((_let_5 (_let_1 ((_let_7 _let_6) _let_3))) _let_2)) (_let_1 ((_let_7 (_let_1 ((_let_5 _let_6) _let_2))) (_let_1 ((_let_5 _let_3) _let_2))))))))))))) (forall ((V11n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V11n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_3) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_3))) _let_2)) _let_2))))) (forall ((V1n_2E0 u) (V2m_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_4 _let_2) _let_3)) (_let_1 ((_let_4 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (= (forall ((V1s_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1s_2E0)))))) (forall ((V2a0_2E0 u) (V3a_2E0 u) (V4f0_2E0 u) (V5f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_8 (s A_27a))) (let ((_let_9 (s _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_9 (c_2Ecombin_2EK_2E1 (_let_8 V2a0_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_9 (c_2Ecombin_2EK_2E1 (_let_8 V3a_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_7 (c_2Ecombin_2EK_2E1 (_let_6 V4f0_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_7 (c_2Ecombin_2EK_2E1 (_let_6 V5f_2E0)))) (_let_2 c_2Ebool_2EARB_2E0)))))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (exists ((V1a0_2E0 u) (V2a_2E0 u) (V3f0_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_7 (s A_27a))) (let ((_let_8 (s _let_3))) (= (_let_1 V0s_2E0) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 (_let_7 V1a0_2E0)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 (_let_7 V2a_2E0)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_6 (c_2Ecombin_2EK_2E1 (_let_5 V3f0_2E0)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_6 (c_2Ecombin_2EK_2E1 (_let_5 V4f_2E0)))) (_let_1 c_2Ebool_2EARB_2E0)))))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u) (V2m_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3p_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1n_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 _let_3) _let_2)))) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Estring_2Echar)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Ebool_2EDATATYPE_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esemi__ring_2Eis__semi__ring_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esemi__ring_2Eis__semi__ring_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ss_2E0 u)) (exists ((V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_4 V0ss_2E0) (_let_4 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_3 V1a_2E0)) (_let_3 V2a0_2E0)) (_let_2 V3f_2E0)) (_let_2 V4f0_2E0)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 (_let_6 _let_7))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_5) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Esemi__ring_2Esemi__ring__SRP_2E0)) _let_5))) _let_3))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Esemi__ring_2Esemi__ring A_27a)) _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_8) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u) (V2m_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_4 _let_2) _let_3)) (_let_1 ((_let_4 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u) (V2m_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3p_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1n_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 _let_3) _let_2)))) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Esemi__ring_2Esemi__ring__SR1_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_2) _let_2))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s _let_6))) (= (_let_9 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4))))))))))))) (forall ((A_27a d)) (and (forall ((V3s_2E0 u) (V4g_2E0 u) (V5f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V3s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_4 (_let_3 V4g_2E0))) (let ((_let_5 (_let_3 V5f_2E0))) (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_5) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_4) _let_2)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))) _let_2))))))))) (forall ((V9s_2E0 u) (V10g_2E0 u) (V11f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V9s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 V10g_2E0))) (let ((_let_7 (_let_5 V11f_2E0))) (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_7) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_6) _let_2)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))) _let_2))))))))))) (forall ((V6s_2E0 u) (V7g_2E0 u) (V8f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V6s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 V7g_2E0))) (let ((_let_7 (_let_5 V8f_2E0))) (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_7) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_6) _let_2)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))) _let_2))))))))))) (forall ((V0s_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 (_let_3 V2f_2E0))) (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_5) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_4) _let_2)))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Esemi__ring_2Esemi__ring__SRM_2E0)) _let_2))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Esemi__ring_2Esemi__ring__SRP_2E0)) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a2_2E0 u) (V3a3_2E0 u) (V4f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3a3_2E0))) (let ((_let_5 (_let_3 V2a2_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V1a1_2E0))) (let ((_let_8 (_let_6 V0a0_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 A_27b))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 ((s (_let_1 _let_12)) V4f_2E0))) (let ((_let_14 (s A_27b))) (= (_let_14 ((c_2Esemi__ring_2Esemi__ring__CASE_2E2 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4))) _let_13)) (_let_14 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 _let_13) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Esemi__ring_2Esemi__ring__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Esemi__ring_2Esemi__ring__size_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 _let_4)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E0)) _let_4))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_3) _let_2) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_3)))) _let_2))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2))))) (let ((_let_5 (tyop_2Eind__type_2Erecspace _let_4))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) X2_2E0))) (let ((_let_9 ((s _let_4) X1_2E0))) (let ((_let_10 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_7) _let_5))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (let ((_let_13 (s _let_5))) (= (_let_13 (((c_2Eind__type_2ECONSTR_2E3 _let_10) _let_9) _let_8)) (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_6 _let_12)) c_2Eind__type_2ECONSTR_2E0)) _let_10))) _let_9))) _let_8))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_27_2E0 u) (V1M_2E0 u) (V2M_27_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 A_27a))))) (let ((_let_3 (s (_let_1 (_let_1 (_let_2 (_let_2 A_27b))))))) (let ((_let_4 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_5 (_let_4 V2M_27_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_4 V1M_2E0))) (=> (and (= _let_7 _let_5) (forall ((V4a0_2E0 u) (V5a1_2E0 u) (V6a2_2E0 u) (V7a3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7a3_2E0))) (let ((_let_5 (_let_3 V6a2_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V5a1_2E0))) (let ((_let_8 (_let_6 V4a0_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 A_27b))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 (s (_let_1 _let_12)))) (let ((_let_14 (s _let_12))) (let ((_let_15 (s _let_11))) (let ((_let_16 (s _let_10))) (let ((_let_17 (s A_27b))) (let ((_let_18 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (=> (= (_let_18 V2M_27_2E0) (_let_18 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4))) (= (_let_17 ((app_2E2 (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 ((app_2E2 (_let_13 V3f_2E0)) _let_8))) _let_7))) _let_5))) _let_4)) (_let_17 ((app_2E2 (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 ((app_2E2 (_let_13 V0f_27_2E0)) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))))))))))) (= (_let_6 ((c_2Esemi__ring_2Esemi__ring__CASE_2E2 _let_7) (_let_3 V3f_2E0))) (_let_6 ((c_2Esemi__ring_2Esemi__ring__CASE_2E2 _let_5) (_let_3 V0f_27_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (_let_6 X0_2E0))) (let ((_let_9 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_10 _let_11))) (let ((_let_13 (_let_1 _let_12))) (let ((_let_14 (s _let_9))) (= (_let_14 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4)) (_let_14 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_1 _let_13)) c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E0)) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_7) _let_3)) (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E0)) _let_7))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (exists ((V1fn_2E0 u)) (forall ((V2a0_2E0 u) (V3a1_2E0 u) (V4a2_2E0 u) (V5a3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5a3_2E0))) (let ((_let_5 (_let_3 V4a2_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V3a1_2E0))) (let ((_let_8 (_let_6 V2a0_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 A_27b))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 (s A_27b))) (let ((_let_14 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (= (_let_13 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_14) A_27b)) V1fn_2E0)) ((s _let_14) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4)))) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_1 _let_12)) V0f_2E0)) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_1 (_let_1 (_let_2 (_let_2 A_27b)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) A_27b))) (let ((_let_8 (s A_27b))) (= (_let_8 ((c_2Esemi__ring_2Esemi__ring__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Esemi__ring_2Esemi__ring__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_5)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_4 _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ecombin_2EK_2E1 _let_3)) (_let_6 ((app_2E2 ((s (_let_4 _let_5)) c_2Ecombin_2EK_2E0)) _let_3)))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V8n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (let ((_let_5 (s _let_4))) (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) F1_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V8n)))) (_let_5 c_2Eind__type_2EBOTTOM_2E0)))))))) (=> (forall ((V1a0_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (= (forall ((V2_27semi__ring_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (=> (forall ((V3a0_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (=> (exists ((V4a0_2E0 u) (V5a1_2E0 u) (V6a2_2E0 u) (V7a3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2))) (let ((_let_4 (tyop_2Epair_2Eprod A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (tyop_2Eind__type_2Erecspace _let_6))) (let ((_let_8 (s _let_2))) (let ((_let_9 (s A_27a))) (let ((_let_10 (s _let_7))) (= (_let_10 V3a0_27_2E0) (_let_10 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s _let_6) ((c_2Epair_2E_2C_2E2 (_let_9 V4a0_2E0)) ((s _let_5) ((c_2Epair_2E_2C_2E2 (_let_9 V5a1_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 (_let_8 V6a2_2E0)) (_let_8 V7a3_2E0)))))))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) F1_2E0))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V2_27semi__ring_27_2E0)) ((s _let_4) V3a0_27_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V2_27semi__ring_27_2E0)) ((s _let_4) V1a0_27_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_4) V1a0_27_2E0)))))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (tyop_2Eind__type_2Erecspace (_let_3 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Esemi__ring_2Esemi__ring A_27a)) _let_4)) V0rep_2E0)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 (_let_6 _let_7))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_5) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Esemi__ring_2Esemi__ring__SRM_2E0)) _let_5))) _let_3))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V5g_2E0 u) (V6f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V6f_2E0))))) (let ((_let_7 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 ((s _let_2) V5g_2E0))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_7)) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))))))))))) (forall ((V7h_2E0 u) (V8g_2E0 u) (V9f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V7h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) V9f_2E0)))))) (let ((_let_9 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 ((s _let_5) V8g_2E0)))))) (= (_let_2 (_let_8 (_let_2 (_let_9 _let_3)))) (_let_2 (_let_9 (_let_2 (_let_8 _let_3))))))))))))))) (forall ((V10g_2E0 u) (V11f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V11f_2E0))))) (let ((_let_7 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 ((s _let_2) V10g_2E0))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_7)) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))))))))))) (forall ((V12h_2E0 u) (V13g_2E0 u) (V14f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V12h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) V14f_2E0)))))) (let ((_let_9 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 ((s _let_5) V13g_2E0)))))) (= (_let_2 (_let_8 (_let_2 (_let_9 _let_3)))) (_let_2 (_let_9 (_let_2 (_let_8 _let_3))))))))))))))) (forall ((V17h_2E0 u) (V18g_2E0 u) (V19f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V17h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) V19f_2E0)))))) (let ((_let_9 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 ((s _let_5) V18g_2E0)))))) (= (_let_2 (_let_8 (_let_2 (_let_9 _let_3)))) (_let_2 (_let_9 (_let_2 (_let_8 _let_3))))))))))))))) (forall ((V22h_2E0 u) (V23g_2E0 u) (V24f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V22h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) V24f_2E0)))))) (let ((_let_9 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 ((s _let_5) V23g_2E0)))))) (= (_let_2 (_let_8 (_let_2 (_let_9 _let_3)))) (_let_2 (_let_9 (_let_2 (_let_8 _let_3))))))))))))))) (forall ((V27h_2E0 u) (V28g_2E0 u) (V29f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V27h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 (_let_6 V29f_2E0)))))) (let ((_let_9 (c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 (_let_6 V28g_2E0)))))) (= (_let_2 (_let_8 (_let_2 (_let_9 _let_3)))) (_let_2 (_let_9 (_let_2 (_let_8 _let_3))))))))))))))) (forall ((V25g_2E0 u) (V26f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 (_let_3 V26f_2E0))))) (let ((_let_7 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 (_let_3 V25g_2E0))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_7)) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))))))))))) (forall ((V20g_2E0 u) (V21f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V21f_2E0))))) (let ((_let_7 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 ((s _let_2) V20g_2E0))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_7)) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))))))))))) (forall ((V15g_2E0 u) (V16f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (_let_5 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V16f_2E0))))) (let ((_let_7 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 ((s _let_2) V15g_2E0))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_7)) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_7) _let_6))))))))))) (forall ((V2h_2E0 u) (V3g_2E0 u) (V4f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V2h_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_6 (c_2Ecombin_2Eo_2E2 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 (_let_4 V4f_2E0)))))) (let ((_let_7 (c_2Ecombin_2Eo_2E2 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 (_let_4 V3g_2E0)))))) (= (_let_2 (_let_6 (_let_2 (_let_7 _let_3)))) (_let_2 (_let_7 (_let_2 (_let_6 _let_3))))))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_2 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 (_let_1 V1f_2E0))))) (let ((_let_5 (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 (_let_1 V0g_2E0))))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) _let_5)) (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0a01_2E0 u) (V1a1_2E0 u) (V2f01_2E0 u) (V3f1_2E0 u) (V4a02_2E0 u) (V5a2_2E0 u) (V6f02_2E0 u) (V7f2_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 c_2Ebool_2EARB_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V7f2_2E0))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_9 (_let_6 V6f02_2E0))) (let ((_let_10 (s A_27a))) (let ((_let_11 (_let_10 V5a2_2E0))) (let ((_let_12 (s _let_4))) (let ((_let_13 (_let_10 V4a02_2E0))) (let ((_let_14 (_let_6 V3f1_2E0))) (let ((_let_15 (_let_6 V2f01_2E0))) (let ((_let_16 (_let_10 V1a1_2E0))) (let ((_let_17 (_let_10 V0a01_2E0))) (= (and (= _let_15 _let_9) (= _let_14 _let_7) (= _let_16 _let_11) (= _let_17 _let_13)) (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_12 (c_2Ecombin_2EK_2E1 _let_17))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_12 (c_2Ecombin_2EK_2E1 _let_16))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 _let_15))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 _let_14))) _let_2)))))))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_12 (c_2Ecombin_2EK_2E1 _let_13))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_12 (c_2Ecombin_2EK_2E1 _let_11))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 _let_9))) (_let_1 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_8 (c_2Ecombin_2EK_2E1 _let_7))) _let_2)))))))))))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0P_2E0 u)) (= (exists ((V1s_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1s_2E0)))))) (exists ((V2a0_2E0 u) (V3a_2E0 u) (V4f0_2E0 u) (V5f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_8 (s A_27a))) (let ((_let_9 (s _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_9 (c_2Ecombin_2EK_2E1 (_let_8 V2a0_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_9 (c_2Ecombin_2EK_2E1 (_let_8 V3a_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_7 (c_2Ecombin_2EK_2E1 (_let_6 V4f0_2E0)))) (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_7 (c_2Ecombin_2EK_2E1 (_let_6 V5f_2E0)))) (_let_2 c_2Ebool_2EARB_2E0)))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecombin_2EK_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Ecombin_2EK_2E0)) _let_1)))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1m_2E0 u) (V2n_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2n_2E0))) (let ((_let_3 (_let_1 V3p_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1m_2E0)))) (= (_let_1 ((_let_4 (_let_1 (_let_5 _let_2))) _let_3)) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_1)))) (= (_let_2 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_1) (_let_2 V1n_2E0)) _let_3)) _let_3))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0a_2E0 u) (V1a0_2E0 u) (V2f_2E0 u) (V3f0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0a_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 A_27a))))) (= (_let_1 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_2) (_let_1 V1a0_2E0)) (_let_4 V2f_2E0)) (_let_4 V3f0_2E0))))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardgeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardgeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0f1_2E0 u) (V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V4f0_2E0))) (let ((_let_5 (_let_3 V3f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V2a0_2E0))) (let ((_let_8 (_let_6 V1a_2E0))) (let ((_let_9 ((s _let_2) V0f1_2E0))) (let ((_let_10 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_10 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_9) (_let_10 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4)))) (_let_10 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 ((app_2E2 _let_9) _let_8))) _let_7) _let_5) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27b)) (_let_3 A_27c)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EreaderMonad_2EFMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EreaderMonad_2EFMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27c) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) V1f_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2EreaderMonad_2EBIND_2E2 ((s (_let_2 A_27c)) (c_2EreaderMonad_2EUNIT_2E1 _let_1))) _let_4)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27e) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_1 A_27e)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_2))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 (_let_2 V0f_2E0))) (= (_let_2 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27c) _let_1)) c_2EreaderMonad_2EUNIT_2E0))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 A_27c)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 (_let_1 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_7))) _let_5)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_1 A_27d)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_2))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 A_27b)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EreaderMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EreaderMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_2 A_27b)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_6 _let_3))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_3))) (= (_let_11 (((c_2EreaderMonad_2EMCOMPOSE_2E3 _let_8) _let_5) _let_1)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_8))) _let_5))) _let_1))))))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27e) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27d))) (let ((_let_6 (_let_5 (_let_1 A_27e)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_2))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27b)) (_let_3 A_27d)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EreaderMonad_2EFMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EreaderMonad_2EFMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EreaderMonad_2EFMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EreaderMonad_2EFMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0m_2E0))) (= (_let_2 ((c_2EreaderMonad_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) c_2EreaderMonad_2EUNIT_2E0))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s (_let_3 A_27c)) V1M_2E0))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2EreaderMonad_2EFMAP_2E2 _let_2) _let_5)) (_let_6 ((c_2EreaderMonad_2EBIND_2E2 _let_5) ((s (_let_1 _let_4)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2EreaderMonad_2EUNIT_2E0)) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2EreaderMonad_2EUNIT_2E2 _let_2) ((s A_27b) V1s_2E0))) _let_2)))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27s d) (V0f1_2E0 u) (V1f2_2E0 u) (V2a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f2_2E0))) (let ((_let_4 ((s A_27a) V2a_2E0))) (let ((_let_5 (_let_1 A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0f1_2E0))) (let ((_let_7 (s _let_2))) (= (_let_7 (((c_2EreaderMonad_2EMCOMPOSE_2E3 _let_6) _let_3) _let_4)) (_let_7 ((c_2EreaderMonad_2EBIND_2E2 ((s _let_5) ((app_2E2 _let_6) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EreaderMonad_2EFMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EreaderMonad_2EFMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2EreaderMonad_2EJOIN_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2EreaderMonad_2EJOIN_2E0)) _let_4))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27s) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2EreaderMonad_2EJOIN_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2EreaderMonad_2EJOIN_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (V0w_2E0 u)) (exists ((V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 _let_1))) (= (_let_2 V0w_2E0) (_let_2 (c_2Ewellorder_2Ewellorder__ABS_2E1 _let_1)))))))) (forall ((A_27a d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27d))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3r_2E0 u) (V4s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V1abs_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V3r_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V0R_2E0)) _let_6))) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 (_let_1 V1Q_2E0))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X0_2E0))) (= (_let_1 (c_2Ecombin_2EI_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Ecombin_2EI_2E0)) _let_2)))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_5))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_5) _let_4))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s A_27d))) (= (_let_6 ((c_2Ecombin_2EW_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Ecombin_2EW_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (= (_let_3 ((c_2Equotient_2E_2D_2D_3E_2E2 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0))) (_let_3 c_2Ecombin_2EI_2E0)))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_5 A_27c))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (_let_5 _let_6))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_7) _let_12))) (let ((_let_14 (s _let_11))) (= (_let_14 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_10) _let_8) _let_4)) (_let_14 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_10))) _let_8))) _let_4)))))))))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Equotient_2Erespects_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) c_2Equotient_2Erespects_2E0)) _let_6))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Equotient_2Erespects_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Equotient_2Erespects_2E0)) _let_4))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3r_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 _let_2))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V1abs_2E0)) _let_2))))))) _let_2))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0)) _let_2) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4g_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_6 (c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V3f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_9 (_let_9 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Emin_2Ebool))) _let_8) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4)))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ebool_2ERES__ABSTRACT_2E3 _let_7) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u) (V4x1_2E0 u) (V5x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 ((app_2E2 (_let_3 V3f2_2E0)) (_let_1 V5x2_2E0))))) (let ((_let_6 (_let_1 V4x1_2E0))) (let ((_let_7 (_let_3 V2f1_2E0))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 ((s (_let_2 _let_8)) V0R1_2E0))) (let ((_let_10 (s _let_8))) (let ((_let_11 (tyop_2Emin_2Efun A_27b))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (app_2E2 ((s (_let_11 _let_12)) V1R2_2E0)))) (let ((_let_14 (s _let_12))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 (_let_14 (_let_13 (_let_4 ((app_2E2 _let_7) _let_6))))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 (_let_10 ((app_2E2 _let_9) _let_6))) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 (_let_14 (_let_13 (_let_4 (((c_2Ebool_2ERES__ABSTRACT_2E3 (_let_10 (c_2Equotient_2Erespects_2E1 _let_9))) _let_7) _let_6))))) _let_5)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0REL_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0REL_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3x1_2E0 u) (V4x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0REL_2E0)) (_let_1 V3x1_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V1abs_2E0)) _let_2)))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1R_2E0)) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V1R_2E0)) (_let_1 V2Q_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X3_2E0))) (let ((_let_6 (_let_4 X2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X1_2E0))) (let ((_let_10 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_11 ((s _let_10) X0_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (_let_12 tyop_2Emin_2Ebool))) (let ((_let_14 (_let_12 _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_8) _let_14))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_11) _let_9) _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_15)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_11))) _let_9))) _let_6))) _let_5))))))))))))))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 (_let_6 (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_13))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_10) _let_8) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_10))) _let_8))) _let_5))) _let_4)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4f_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V4f_2E0))) (let ((_let_6 (app_2E2 _let_5))) (let ((_let_7 (s A_27b))) (let ((_let_8 (tyop_2Emin_2Efun A_27b))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((s (_let_8 _let_9)) V3R2_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_13 ((s (_let_3 _let_12)) V0R1_2E0))) (let ((_let_14 (tyop_2Emin_2Efun _let_4))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Equotient_2Erespects_2E2 ((s (_let_14 (_let_14 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_13) _let_10))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 _let_13) _let_2))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 _let_10) (_let_7 (_let_6 (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)) ((s A_27c) ((app_2E2 ((s (_let_3 A_27c)) V1abs1_2E0)) _let_2))))))))) (_let_7 (_let_6 _let_2)))))))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2Q_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V1P_2E0))) (let ((_let_8 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Emin_2Ebool))) _let_7) _let_4))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_5))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_5) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2f_2E0 u) (V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (= (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V0R1_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V1R2_2E0)) (_let_5 ((app_2E2 (_let_4 V2f_2E0)) _let_6))))) (_let_5 ((app_2E2 (_let_4 V3g_2E0)) _let_2))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R2_2E0)) (_let_2 V2f_2E0)) (_let_2 V3g_2E0))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27d)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27e) A_27b)) V5rep2_2E0)))) (forall ((V6R3_2E0 u) (V7abs3_2E0 u) (V8rep3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V6R3_2E0)) ((s (_let_1 A_27f)) V7abs3_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)))) (forall ((V9f_2E0 u) (V10g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 ((s (_let_1 A_27e)) V10g_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27e))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_3 A_27f)) V9f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (s (_let_1 A_27f)))) (= (_let_7 ((c_2Ecombin_2Eo_2E2 _let_5) _let_2)) (_let_7 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_1 A_27a)) V2rep1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27f)) V7abs3_2E0)) ((s (_let_4 A_27c)) ((c_2Ecombin_2Eo_2E2 ((s (_let_6 A_27c)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_6 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)) _let_5))) ((s (_let_4 A_27b)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_4 A_27d)) V1abs1_2E0)) ((s (_let_3 A_27b)) V5rep2_2E0)) _let_2)))))))))))))))))))))))) (forall ((A_27a d) (V0E_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_1 _let_2)) V0E_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Equotient_2EEQUIV_2E1 _let_6))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_6))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebool_2E_3F_2E1 _let_4)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Equotient_2EPARTIAL__EQUIV_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (_let_7 (_let_6 _let_3)))) (let ((_let_9 (app_2E2 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_7 (_let_6 _let_2)))) (= (and (= _let_8 _let_11) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_11) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_2)))))))))))))))) (exists ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f1_2E0 u) (V7f2_2E0 u) (V8x1_2E0 u) (V9x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (s (_let_3 _let_4)))) (let ((_let_6 (_let_5 V7f2_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_1 V8x1_2E0))) (let ((_let_9 (_let_5 V6f1_2E0))) (let ((_let_10 (tyop_2Emin_2Efun A_27b))) (let ((_let_11 (_let_10 tyop_2Emin_2Ebool))) (let ((_let_12 ((s (_let_10 _let_11)) V3R2_2E0))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (let ((_let_14 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_15 ((s (_let_3 _let_14)) V0R1_2E0))) (let ((_let_16 (tyop_2Emin_2Efun _let_4))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_15) ((s (_let_16 (_let_16 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_15) _let_12))) _let_9) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 _let_15) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 _let_12) (_let_7 ((c_2Ecombin_2EW_2E2 _let_9) _let_8))))) (_let_7 ((c_2Ecombin_2EW_2E2 _let_6) _let_2))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g (-> Bool Bool)) (V2s_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) (((c_2Equotient_2E_2D_2D_3E_2E3 _let_4) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1g))) _let_1))))) (V1g (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_4) _let_2))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Equotient_2EPARTIAL__EQUIV_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Equotient_2EPARTIAL__EQUIV_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4g_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_6 (c_2Ebool_2ERES__FORALL_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_5))))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V3f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_9 (_let_9 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Emin_2Ebool))) _let_8) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4)))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Ewo2wo_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ewellorder_2Ewo2wo_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_27_2E0 u) (V3x_2E0 u) (V0x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V0x_2E0))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 V1x_27_2E0))) (let ((_let_11 (app_2E2 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_5))) (let ((_let_13 (_let_4 _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_13)) F2_2E0)) _let_10))) _let_3))) _let_7))) _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_3))) _let_2))))))))))))))))))) (=> (forall ((V0x_2E0 u) (V1x_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) V0x_2E0))) (let ((_let_5 ((s A_27a) V3x_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 V1x_27_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_1 _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_8 _let_13)) F1_2E0)) _let_4))) _let_7))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__FORALL_2E2 (_let_6 (c_2Equotient_2Erespects_2E1 _let_4))) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F2_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))))))) (=> (forall ((V1x_27_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1x_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1x_27_2E0))) (let ((_let_5 (_let_1 _let_2))) (let ((_let_6 ((s _let_5) V0x_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_3 (c_2Equotient_2Erespects_2E1 _let_6)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_6) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__EXISTS_2E2 _let_9) (_let_3 ((app_2E2 (_let_8 F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__FORALL_2E2 _let_9) (_let_3 ((app_2E2 (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F1_2E0)) _let_6))) _let_4)))))))))))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0REL1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u) (V3REL2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u) (V6f1_2E0 u) (V7f2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V7f2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (((c_2Equotient_2E_3D_3D_3D_3E_2E4 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0REL1_2E0)) ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V3REL2_2E0)) (_let_2 V6f1_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_3))) (forall ((V10r_2E0 u) (V11r_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V11r_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V3REL2_2E0)) (_let_1 V10r_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) ((s A_27d) ((app_2E2 ((s (_let_3 A_27d)) V4abs2_2E0)) _let_2))))))))))))))) (forall ((V8r_2E0 u) (V9r_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9r_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0REL1_2E0)) (_let_1 V8r_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)) ((s A_27c) ((app_2E2 ((s (_let_3 A_27c)) V1abs1_2E0)) _let_2)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) ((s (_let_5 A_27d)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_5 A_27a)) V2rep1_2E0)) ((s (_let_4 A_27d)) V4abs2_2E0)) _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (_let_4 V7g_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_1 V8x_2E0))) (let ((_let_8 (_let_4 V6f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_9 _let_10)) V3R2_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_3 _let_13)) V0R1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_7))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_14) _let_11) _let_8) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) (_let_6 ((app_2E2 _let_8) _let_7))))) (_let_6 ((app_2E2 _let_5) _let_2))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3f_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebool_2E_3F_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_4 (c_2Equotient_2Erespects_2E1 ((s (_let_2 _let_3)) V0R_2E0)))) (_let_4 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_2 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool))) _let_1))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (= (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (_let_6 (_let_5 (_let_1 V1x_2E0))))) (= (= _let_7 (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_2)))))))))))) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (_let_1 V5y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u) (V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V6x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V7y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Eright__unique_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Eleft__unique_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Ebi__unique_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27d))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27d)) V6f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s A_27d))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s A_27b) ((c_2Ebool_2ELET_2E2 ((s (_let_4 A_27b)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_4 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) _let_3))) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2rep1_2E0)) _let_1))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0P Bool) (V1Q Bool)) (=> (= V0P V1Q) (=> V0P V1Q))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2h_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V2h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V1g_2E0))) (let ((_let_5 (s A_27d))) (= (_let_5 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_2) _let_4) _let_3) _let_1)) (_let_5 ((app_2E2 _let_4) ((s A_27b) ((app_2E2 _let_3) ((s A_27c) ((app_2E2 _let_2) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s (_let_2 _let_3)) V6f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 A_27c)) V1abs1_2E0))) (let ((_let_7 (_let_5 A_27b))) (let ((_let_8 (s A_27d))) (= (_let_8 ((c_2Ecombin_2EW_2E2 _let_4) _let_1)) (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s A_27b) ((c_2Ecombin_2EW_2E2 ((s (_let_5 _let_7)) (((c_2Equotient_2E_2D_2D_3E_2E3 _let_6) ((s ((tyop_2Emin_2Efun _let_3) _let_7)) ((c_2Equotient_2E_2D_2D_3E_2E2 _let_6) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) _let_4))) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2rep1_2E0)) _let_1)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Equotient_2Erespects_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) c_2Equotient_2Erespects_2E0)) _let_6))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> Bool Bool)) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6x1_2E0 u) (V7x2_2E0 u) (V8y1_2E0 u) (V9y2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V9y2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V7x2_2E0))) (let ((_let_5 (_let_1 V8y1_2E0))) (let ((_let_6 (_let_3 V6x1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s (_let_7 _let_8)) V0R1_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (tyop_2Emin_2Efun A_27b))) (let ((_let_13 (_let_12 tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_12 _let_13)) V3R2_2E0)) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_6))) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 (_let_3 ((c_2Ecombin_2EK_2E2 _let_6) _let_5))))) (_let_3 ((c_2Ecombin_2EK_2E2 _let_4) _let_2)))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3f_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebool_2E_21_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__FORALL_2E2 (_let_4 (c_2Equotient_2Erespects_2E1 ((s (_let_2 _let_3)) V0R_2E0)))) (_let_4 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_2 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool))) _let_1))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u) (V4x1_2E0 u) (V5x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (_let_4 V3f2_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_3 _let_6)) V0R1_2E0))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s A_27b))) (let ((_let_10 (tyop_2Emin_2Efun A_27b))) (let ((_let_11 (_let_10 tyop_2Emin_2Ebool))) (let ((_let_12 (app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) V1R2_2E0)) (_let_9 ((app_2E2 (_let_4 V2f1_2E0)) (_let_1 V4x1_2E0)))))))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 (_let_12 (_let_9 ((app_2E2 _let_5) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_2))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (_let_12 (_let_9 (((c_2Ebool_2ERES__ABSTRACT_2E3 (_let_8 (c_2Equotient_2Erespects_2E1 _let_7))) _let_5) _let_2)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (= (_let_389 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Emin_2Ebool)) (_let_389 c_2Emin_2E_3D_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (_let_4 V7g_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_1 V8x_2E0))) (let ((_let_8 (_let_4 V6f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_9 _let_10)) V3R2_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_3 _let_13)) V0R1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_7))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_14) _let_11) _let_8) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) (_let_6 ((app_2E2 _let_8) _let_7))))) (_let_6 ((app_2E2 _let_5) _let_2))))))))))))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebool_2ERES__ABSTRACT_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27d) X2_2E0))) (let ((_let_2 ((s A_27e) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27e))) (let ((_let_4 (tyop_2Emin_2Efun A_27d))) (let ((_let_5 (_let_4 (_let_3 A_27f)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 A_27f))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s A_27f))) (= (_let_9 (((c_2Ecombin_2EC_2E3 _let_6) _let_2) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_2))) _let_1))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Equotient_2Erespects_2E2 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R2_2E0)))) ((s _let_2) V2f_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V2f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V3x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V0R1_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V1R2_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 (s A_27c))) (let ((_let_3 (_let_2 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27c))) (= (_let_2 ((c_2Ecombin_2EK_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Ecombin_2EK_2E0)) _let_3))) _let_1)))))))) (forall ((A_27b d) (A_27c d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27e) A_27f))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27f) A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27e))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27c))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V6f1_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V6f1_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f1_2E0 u) (V7f2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7f2_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)))) (let ((_let_6 (_let_3 V6f1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 ((c_2Equotient_2E_3D_3D_3D_3E_2E4 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) V3R2_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_3 (_let_5 _let_6))) (_let_3 (_let_5 _let_4)))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3a_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1abs_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) _let_2)))) _let_2))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun (_let_4 A_27c)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_6))) _let_3)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Equotient_2EEQUIV_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0)))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27d) V7y_2E0))) (let ((_let_2 (s A_27c))) (let ((_let_3 (_let_2 V6x_2E0))) (let ((_let_4 (s A_27a))) (= (_let_2 ((c_2Ecombin_2EK_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1abs1_2E0)) (_let_4 ((c_2Ecombin_2EK_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)) _let_3))) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) _let_1)))))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V2R_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2R_2E0)) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1Q_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3x1_2E0 u) (V4x2_2E0 u) (V5y1_2E0 u) (V6y2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y2_2E0))) (let ((_let_3 (_let_1 V4x2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V5y1_2E0))) (let ((_let_10 (app_2E2 (_let_7 (_let_6 (_let_1 V3x1_2E0)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_9))) _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 (_let_6 (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_13))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_10) _let_8) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_10))) _let_8))) _let_5))) _let_4)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X3_2E0))) (let ((_let_4 (_let_2 X2_2E0))) (let ((_let_5 (_let_2 X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (_let_9 _let_11))) (let ((_let_13 (s _let_8))) (= (_let_13 ((((c_2Esorting_2EPART_2E4 _let_7) _let_5) _let_4) _let_3)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_12)) c_2Esorting_2EPART_2E0)) _let_7))) _let_5))) _let_4))) _let_3))))))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V3x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1R_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V1R_2E0)) (_let_1 V2Q_2E0))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ewot_2Epreds__image_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Ewot_2Epreds__image_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 ((c_2Ecombin_2EW_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Ecombin_2EW_2E0)) _let_5))) _let_1)))))))))) (= (_let_388 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_388 c_2Eoption_2ENONE_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (s (_let_1 A_27d)))) (let ((_let_3 (_let_2 V6f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 A_27b)))) (let ((_let_6 (_let_4 tyop_2Emin_2Ebool))) (= _let_3 (_let_2 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_1 A_27a)) V2rep1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) (_let_5 ((c_2Ebool_2ERES__ABSTRACT_2E2 ((s _let_6) (c_2Equotient_2Erespects_2E1 ((s (_let_4 _let_6)) V0R1_2E0)))) (_let_5 (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_4 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) _let_3)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_2))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Equotient_2EQUOTIENT_2E3 _let_9) _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Equotient_2EQUOTIENT_2E0)) _let_9))) _let_7))) _let_4))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Equotient_2EEQUIV_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Equotient_2EPARTIAL__EQUIV_2E1 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)))) (= (_let_3 c_2Equotient_2Erespects_2E0) (_let_3 c_2Ecombin_2EW_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0E_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_1 _let_2)) V0E_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Equotient_2EEQUIV_2E1 _let_6))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_6))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebool_2E_3F_21_2E1 _let_4)))))))))))) (forall ((A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27e))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27e) A_27f))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27f))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Equotient_2ERES__EXISTS__EQUIV_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) (tyop_2Elist_2Elist _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0P Bool) (V1Q Bool)) (=> (=> V1Q V0P) (=> (not V0P) (not V1Q)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4f_2E0 u) (V5g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V5g_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_1 _let_4)) V0R1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) V3R2_2E0)) (_let_2 V4f_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((c_2Ebool_2ERES__ABSTRACT_2E2 ((s _let_4) (c_2Equotient_2Erespects_2E1 _let_5))) _let_3)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7g_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 ((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_6 A_27a)) V2rep1_2E0)) ((s (_let_5 A_27d)) V4abs2_2E0)))) (let ((_let_8 (s (_let_6 A_27d)))) (let ((_let_9 (_let_3 V6f_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (c_2Equotient_2Erespects_2E2 ((s (_let_10 (_let_10 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V3R2_2E0)))))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 _let_4)))) (= (= (_let_8 (_let_7 _let_9)) (_let_8 (_let_7 _let_4))) (forall ((V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V8x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V0R1_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V3R2_2E0)) (_let_5 ((app_2E2 (_let_4 V6f_2E0)) _let_6))))) (_let_5 ((app_2E2 (_let_4 V7g_2E0)) _let_2)))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_1) A_27a))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_4 (c_2Ellist_2ELTL_2E1 _let_2)) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) c_2Epair_2EFST_2E0)) ((s (tyop_2Eoption_2Eoption _let_3)) (c_2Ellist_2ELTL__HD_2E1 _let_2)))))))))) (forall ((A_27a d)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (forall ((V0h_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2t_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2Ellength__rel_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2Ellength__rel_2E2 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V0h_2E0)) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V0ll1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2ELFINITE_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2ELFINITE_2E1 _let_3))))))))))))) (forall ((V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll2_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_5 (_let_2 V0ll1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_5) _let_3))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_3)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_5))))) (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_3))))))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))))))))))) (forall ((A_27a d) (A_27b d) (V0G_2E0 u) (V1f_2E0 u) (V2seen_2E0 u) (V3fringe_2E0 u) (V4acc_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3fringe_2E0))) (let ((_let_4 (_let_2 V2seen_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 _let_1)) V0G_2E0))) (let ((_let_7 (c_2Ebft_2EBFT_2E5 _let_6))) (let ((_let_8 (s A_27b))) (let ((_let_9 (_let_8 V4acc_2E0))) (let ((_let_10 ((s (_let_5 ((tyop_2Emin_2Efun A_27b) A_27b))) V1f_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_5 tyop_2Emin_2Ebool)) (c_2EdirGraph_2EParents_2E1 _let_6))))) (= (_let_8 ((((_let_7 _let_10) _let_4) _let_3) _let_9)) (_let_8 (((c_2Elist_2EFOLDR_2E3 _let_10) _let_9) (_let_2 ((((_let_7 ((s (_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) _let_4) _let_3) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_1 (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0limopt))))))) V0limopt))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELTL_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELTL_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ll2_2E0 u) (V1ll1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0ll2_2E0))) (let ((_let_4 (_let_2 V1ll1_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (=> (= (_let_5 (c_2Ellist_2ELTL__HD_2E1 _let_4)) (_let_5 (c_2Ellist_2ELTL__HD_2E1 _let_3))) (= _let_4 _let_3)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0ll_2E0 u) (V1h_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0ll_2E0))) (let ((_let_6 (s (_let_2 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_3) A_27a))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_8))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_10)) F0_2E0)) _let_5))) _let_1)) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_7) ((c_2Epair_2E_2C_2E2 (_let_4 (c_2Ellist_2Ellist__abs_2E1 (_let_6 ((c_2Ecombin_2Eo_2E2 (_let_6 (c_2Ellist_2Ellist__rep_2E1 _let_5))) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))))) _let_1)))))))))))))))) (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 (c_2Ellist_2ELTL__HD_2E1 _let_2)) (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) ((c_2Ellist_2Ellist__rep_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_5 c_2Eoption_2ENONE_2E0)) ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ellist_2ELPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ellist_2ELPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ellist_2ELFINITE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))) (c_2Ellist_2EtoList_2E1 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Earithmetic_2EFUNPOW_2E0)) _let_7))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0ll_2E0 u) (V1x_2E0 u) (V2n1 mono_2Etyop_2Enum_2Enum) (V3n2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V3n2) V2n1) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n1))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0))))) (exists ((V4y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n2))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V4y_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (= V5x mono_2Ec_2Enum_2E0) (F0 V5x))) (forall ((V0lrep__ok_27_2E0 u)) (=> (forall ((V1a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0lrep__ok_27_2E0)) ((s _let_1) V1a0_2E0)))) (or (exists ((V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0lrep__ok_27_2E0)) ((s _let_1) V4t_2E0)))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 ((app_2E2 (_let_3 V1a0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V5x)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V5x)))) (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27a) V3h_2E0)))) (_let_4 ((app_2E2 (_let_3 V4t_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V5x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V1a0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2x)))) (_let_2 c_2Eoption_2ENONE_2E0))))))))) (forall ((V6a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s _let_1) V6a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0lrep__ok_27_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2Elrep__ok_2E1 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0x_2E0)))) (forall ((V1LFINITE_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (forall ((V2a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2a0_2E0))) (=> (or (exists ((V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4t_2E0))) (and (= (_let_2 V2a0_2E0) (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V3h_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1LFINITE_27_2E0)) _let_3)))))))) (= _let_3 (_let_2 c_2Ellist_2ELNIL_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1LFINITE_27_2E0)) _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1LFINITE_27_2E0)) ((s _let_1) V0x_2E0))))))))) (forall ((A_27a d) (V0ll_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (_let_1 V2l2_2E0))) (let ((_let_4 (c_2Ellist_2ELPREFIX_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Ellist_2ELPREFIX_2E2 _let_2))) (let ((_let_7 (_let_1 V0ll_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_7)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 _let_1))) (= (_let_2 ((c_2Ellist_2ELUNFOLD_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ellist_2ELUNFOLD_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_7 ((s _let_6) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 X0)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (F0 V6x) (= V6x mono_2Ec_2Enum_2E0))) (forall ((V0x_2E0 u)) (= (exists ((V1lrep__ok_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (and (forall ((V2a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1lrep__ok_27_2E0)) ((s _let_1) V2a0_2E0)))) (or (forall ((V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V2a0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3x)))) (_let_2 c_2Eoption_2ENONE_2E0))))) (exists ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (and (forall ((V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 ((app_2E2 (_let_3 V2a0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V6x)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V6x)))) (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27a) V4h_2E0)))) (_let_4 ((app_2E2 (_let_3 V5t_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V6x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1lrep__ok_27_2E0)) ((s _let_1) V5t_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1lrep__ok_27_2E0)) ((s _let_1) V0x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) V0x_2E0)))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2ELPREFIX_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2ELPREFIX_2E2 _let_2) _let_3)))) (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EDecode_2Ewf__decoder_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_4 ((c_2Ellist_2ELAPPEND_2E2 (_let_4 (c_2Ellist_2EfromList_2E1 _let_3))) (_let_4 (c_2Ellist_2EfromList_2E1 _let_2)))) (_let_4 (c_2Ellist_2EfromList_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_1)))) (= (_let_2 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_1) _let_3) (_let_2 V1n_2E0))) _let_3))))))) (forall ((A_27a d) (A_27b d) (V0ll_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_2 (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27b)) ((c_2Ellist_2ELMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_1))))) (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_2 (c_2Ellist_2ELLENGTH_2E1 _let_1))))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0ll1_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2)))) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_2) (_let_1 V1ll2_2E0))) _let_2))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (=> (= (_let_4 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_2))) (= V0n (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V1b) V14t) (V2a V14t)) (((F7 V2a) V1b) V14t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (((F11 V2a) V0c) V20t) (or (not (V0c V20t)) (V2a V20t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (((F9 V2a) V0c) V17t) (or (V2a V17t) (V0c V17t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V21t mono_2Etyop_2Enum_2Enum)) (= (or (V1b V21t) (V2a V21t)) (((F12 V2a) V1b) V21t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V4t) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1b) V4t)) (((F0 V2a) V1b) V4t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V12t) (not (V0c V12t))) (((F6 V2a) V0c) V12t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V8t) (V1b V8t)) (((F3 V2a) V1b) V8t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (((F2 V2a) V0c) V7t) (and (V2a V7t) (V0c V7t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V16t) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1b) V0c) V16t)) ((((F8 V2a) V1b) V0c) V16t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V19t) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V0c) V19t)) ((((F10 V2a) V1b) V0c) V19t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= ((((F1 V2a) V1b) V0c) V6t) (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1b) V0c) V6t) (V2a V6t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V0c) V10t) (V2a V10t)) ((((F4 V2a) V1b) V0c) V10t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V11t) (V1b V11t) (not (V0c V11t))) ((((F5 V2a) V1b) V0c) V11t))) (forall ((V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (or (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V3x) (V1b V3x)) (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V3x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F0 V2a) V1b)) V3x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F7 V2a) V1b)) V13x) (or (V1b V13x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V13x)))) (forall ((V18x mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F11 V2a) V0c)) V18x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V0c) V18x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F12 V2a) V1b)) V18x))) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (((F10 V2a) V1b) V0c)) V18x))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (or (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1b) V0c) V15x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b) V15x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F9 V2a) V0c)) V15x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (((F8 V2a) V1b) V0c)) V15x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (((F5 V2a) V1b) V0c)) V9x) (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V0c) V9x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F6 V2a) V0c)) V9x))) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (((F4 V2a) V1b) V0c)) V9x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (((F1 V2a) V1b) V0c)) V5x) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F2 V2a) V0c)) V5x) (and (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1b) V0c) V5x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F3 V2a) V1b)) V5x))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V2ll_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (exists ((V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4i))) ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V3x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) F3_2E0)) ((s _let_1) V2ll_2E0)))) ((s A_27a) V3x_2E0)))))))) (=> (forall ((V2ll_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V2ll_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_3))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F3_2E0)) _let_3))) _let_1))))))))))))))) (=> (forall ((V2ll_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F2_2E0)) ((s _let_2) V2ll_2E0)))) (_let_1 V5x_2E0)))) (_let_1 V6y_2E0)))) (exists ((V7i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V7i) V8j) (= (_let_2 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V7i))) _let_3)) (_let_2 (c_2Eoption_2ESOME_2E1 (_let_1 V5x_2E0)))) (= (_let_2 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V8j))) _let_3)) (_let_2 (c_2Eoption_2ESOME_2E1 (_let_1 V6y_2E0))))))))))))))))) (=> (forall ((V2ll_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 ((s _let_4) V2ll_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_10) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_6 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_9 _let_14)) F1_2E0)) _let_5))) _let_3))) _let_2)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))))) (forall ((V0lo_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1X_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0lo_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_1)))) (exists ((V2ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V2ll_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_6 _let_5)))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 (s (_let_9 tyop_2Emin_2Ebool)))) (let ((_let_11 (_let_6 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_12 (s (_let_6 tyop_2Emin_2Ebool)))) (and (= (_let_12 V1X_2E0) (_let_12 (c_2Epred__set_2EGSPEC_2E1 ((s _let_11) ((app_2E2 ((s (_let_8 _let_11)) F0_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_10 V0lo_2E0)) (_let_10 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_9 _let_5)) (c_2Epair_2EUNCURRY_2E1 ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F1_2E0)) _let_2))))))))) (forall ((V9i mono_2Etyop_2Enum_2Enum) (V10j mono_2Etyop_2Enum_2Enum) (V11x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V11x_2E0))))) (let ((_let_3 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V10j))) _let_3)) _let_2) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V9i))) _let_3)) _let_2)) (= V9i V10j))))))))))))))))))))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 ((s A_27a) V1h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0))) (let ((_let_5 (c_2Ellist_2Eexists_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Ebool_2EF) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ellist_2ELFINITE_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V2l1_2E0 u) (V1l2_2E0 u) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 V2l1_2E0))) (let ((_let_8 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_10 (_let_9 _let_5))) (let ((_let_11 (tyop_2Emin_2Efun _let_1))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (_let_11 _let_12))) (= (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_9 _let_13)) F0_2E0)) _let_8))) _let_7))) _let_3))) (_let_4 (i_mono_2Etyop_2Enum_2Enum V3m)))) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V0n) V3m)))) (_let_6 ((c_2Ellist_2ELNTH_2E2 _let_8) _let_7))) (_let_6 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) V3m)))) _let_3))))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V2l1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (c_2Ellist_2ELNTH_2E2 _let_5))) (let ((_let_13 (s _let_6))) (= (_let_13 (_let_12 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)))) (_let_13 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_4))) (_let_13 (_let_12 _let_4))) ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_7 _let_11)) F0_2E0)) _let_5))) _let_4))) _let_3))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ECONS_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) c_2Elist_2ECONS_2E0)) _let_1)))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_1) A_27a))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_4 (c_2Ellist_2ELHD_2E1 _let_2)) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27a)) c_2Epair_2ESND_2E0)) ((s (tyop_2Eoption_2Eoption _let_3)) (c_2Ellist_2ELTL__HD_2E1 _let_2)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELTAKE_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Ellist_2ELFLATTEN_2E0)) _let_3)))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_2 (c_2Ellist_2ELHD_2E1 _let_1)) (_let_2 ((c_2Ellist_2Ellist__rep_2E2 _let_1) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))))) (forall ((A_27a d) (A_27b d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1g_2E0 u) (V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V1g_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 ((s A_27b) V5b_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_9 (_let_3 _let_8))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F2_2E0)) _let_5))) _let_1))) _let_7)) (_let_6 ((c_2Ellist_2ELCONS_2E2 _let_7) (_let_6 ((app_2E2 _let_5) _let_1))))))))))))))) (=> (forall ((V1g_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 ((s _let_7) V3v_2E0))) (let ((_let_9 (s _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_1))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_6 _let_10)) F1_2E0)) _let_4))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F2_2E0)) _let_4)))))))))))))))) (=> (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) F0_2E0)) ((s _let_3) V0f_2E0)))) ((s _let_2) V1g_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_5))) (= (_let_7 ((app_2E2 _let_4) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) V0f_2E0)) _let_8))) (_let_7 c_2Ellist_2ELNIL_2E0)) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F1_2E0)) _let_4))))))))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (tyop_2Ellist_2Ellist A_27b))) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F0_2E0)) ((s _let_2) V0f_2E0)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Earithmetic_2EFUNPOW_2E0)) _let_7))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (= V4x mono_2Ec_2Enum_2E0) (F0 V4x))) (forall ((V0a0_2E0 u)) (= (or (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V0a0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1x)))) (_let_2 c_2Eoption_2ENONE_2E0))))) (exists ((V2h_2E0 u) (V3t_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) V3t_2E0)))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 ((app_2E2 (_let_3 V0a0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V4x)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V4x)))) (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27a) V2h_2E0)))) (_let_4 ((app_2E2 (_let_3 V3t_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V4x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) V0a0_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ellist_2ELFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (exists ((V2y_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_2 V0ll_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_2 V2y_2E0))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1a0_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Ellist_2Ellist A_27a)) V1a0_2E0)))) (or (exists ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V5t_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (= (_let_1 V1a0_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V4h_2E0)) _let_2))))))) (exists ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 ((s A_27a) V2h_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (= (_let_1 V1a0_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_2) (_let_1 V3t_2E0))))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 (_let_1 V1l1_2E0)) (_let_1 V0l2_2E0)))) (exists ((V2ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_1 V0l2_2E0) (_let_1 ((c_2Ellist_2ELAPPEND_2E2 (_let_1 V1l1_2E0)) (_let_1 V2ll_2E0))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 ((s (_let_5 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_7 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) _let_1)))))) (= (_let_7 ((c_2EDecode_2Edecode__option_2E2 _let_6) _let_3)) (_let_7 ((c_2EDecode_2Eenc2dec_2E2 _let_6) ((s (_let_5 _let_1)) (c_2EEncode_2Eencode__option_2E1 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 _let_1) _let_1))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_2))) (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELLENGTH_2E0)) _let_2))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 (_let_1 c_2Ellist_2ELNIL_2E0)) _let_2)) _let_2)))) (forall ((V1h_2E0 u) (V2t_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V2t_2E0))) (let ((_let_4 (c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)))) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1m) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1m) ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u) (V2ll_2E0 u)) (let ((_let_1 ((s A_27a) V0h_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2ll_2E0))) (let ((_let_6 (_let_4 V1t_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption _let_3)))) (= (= _let_5 (_let_4 ((c_2Ellist_2ELCONS_2E2 _let_1) _let_6))) (and (= (_let_7 (c_2Ellist_2ELTL_2E1 _let_5)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_6))) (= (_let_2 (c_2Ellist_2ELHD_2E1 _let_5)) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Eoption_2EOPTION__MAP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2EOPTION__MAP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V4tx_2E0 u) (V5hx_2E0 u)) (let ((_let_1 ((s A_27b) V4tx_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 ((s A_27a) V5hx_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_11 (_let_2 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_12)) F1_2E0)) _let_5))) _let_4))) _let_1))) _let_9)) (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) (c_2Elist_2ECONS_2E1 _let_9))) (_let_8 ((c_2Ellist_2ELTAKE_2E2 _let_5) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))))))))))))))))))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun A_27a) _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 ((s _let_1) V3v_2E0))) (let ((_let_12 (s _let_6))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_14 (_let_8 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_5))) _let_4))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_5))) _let_4)))))))))))))))))))) (forall ((V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((s A_27b) V0x_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_6))) (let ((_let_8 ((s _let_7) V2f_2E0))) (let ((_let_9 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_8) _let_4)))) (let ((_let_10 (s tyop_2Enum_2Enum))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_11))) (and (= (_let_3 ((c_2Ellist_2ELTAKE_2E2 (_let_10 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_9)) (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_6) ((app_2E2 _let_8) _let_4))) (_let_3 c_2Eoption_2ENONE_2E0)) ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_12)) F0_2E0)) (_let_10 (i_mono_2Etyop_2Enum_2Enum V1n))))) _let_8))))) (= (_let_3 ((c_2Ellist_2ELTAKE_2E2 (_let_10 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_9)) (_let_3 (c_2Eoption_2ESOME_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (exists ((V1g_2E0 u)) (and (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27b))) (= (_let_5 (c_2Ellist_2ELHD_2E1 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) V1g_2E0)) _let_1)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) c_2Epair_2ESND_2E0)) ((s _let_3) ((app_2E2 ((s (_let_4 _let_3)) V0f_2E0)) _let_1)))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_7 ((s (_let_4 _let_6)) V1g_2E0))) (let ((_let_8 (s (tyop_2Eoption_2Eoption _let_6)))) (= (_let_8 (c_2Ellist_2ELTL_2E1 ((s _let_6) ((app_2E2 _let_7) _let_1)))) (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 ((s (_let_5 _let_6)) ((c_2Ecombin_2Eo_2E2 _let_7) ((s (_let_5 A_27a)) c_2Epair_2EFST_2E0)))) ((s _let_3) ((app_2E2 ((s (_let_4 _let_3)) V0f_2E0)) _let_1))))))))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (let ((_let_3 (_let_1 V0ll_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2ELPREFIX_2E2 _let_2) _let_3))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2ELPREFIX_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (=> (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Ellist_2Ellist A_27a)) V1l_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V2x_2E0)))) (forall ((V3h_2E0 u)) (exists ((V4y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_3 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V3h_2E0)) (_let_3 V1l_2E0))))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V4y_2E0))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3hd_2E0 u) (V4tl_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4tl_2E0))) (let ((_let_4 ((s A_27a) V3hd_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) F1_2E0)) _let_4))) _let_3)) (_let_6 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u) (V3hd_2E0 u)) (let ((_let_1 ((s A_27a) V3hd_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s _let_3))) (let ((_let_7 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V2ll_2E0))) (let ((_let_10 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_11 (_let_5 _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_11))) (= (_let_6 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_12)) F0_2E0)) _let_10))) _let_9))) _let_1)) (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 (_let_6 ((c_2Ellist_2ELTAKE_2E2 _let_10) (_let_8 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_7)) (c_2Ellist_2ELTL_2E1 _let_9))))))) (_let_6 c_2Eoption_2ENONE_2E0)) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F1_2E0)) _let_1)))))))))))))))))) (and (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V2ll_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_2)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Ellist_2ELHD_2E1 _let_2))) (_let_7 c_2Eoption_2ENONE_2E0)) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1exists_27_2E0 u)) (=> (and (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_3) (_let_2 V3t_2E0)))))))))))) (forall ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V4h_2E0)) _let_3))))))))))))) (forall ((V6a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V6a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)) _let_2)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ls_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_1) V1ls_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s _let_2))) (= (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_3)) (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3))) ((s ((tyop_2Emin_2Efun _let_1) _let_2)) c_2Ellist_2ELTL_2E0)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELNTH_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELNTH_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_3 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27c) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u) (F2_2E0 u) (F3_2E0 u) (F1_2E0 u)) (=> (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (= (= _let_4 _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3))))))))))) (=> (forall ((V2xs_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V2xs_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_3)))) (= (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) _let_2)) (_let_6 (c_2Eoption_2ESOME_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F2_2E0)) _let_4))) _let_2))))))))))) (=> (forall ((V2xs_2E0 u) (V3ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3ys_2E0))) (let ((_let_4 (_let_2 V2xs_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F3_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3)))))))))))) (=> (forall ((V1l2_2E0 u) (V2xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2xs_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_7 ((s _let_6) V1l2_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_6))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_8 _let_4)) F1_2E0)) _let_7))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Ellist_2EtoList_2E1 _let_7))) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_3 _let_9)) F2_2E0)) _let_2))) _let_7))) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) F3_2E0)) _let_2))))))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_2 V0l1_2E0))) (let ((_let_8 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ellist_2ELPREFIX_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_4)) (c_2Ellist_2EtoList_2E1 _let_7))) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F0_2E0)) _let_7))) _let_3))) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_3))))))))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__BIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1g_2E0 u) (V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V1g_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 ((s A_27b) V5b_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_9 (_let_3 _let_8))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F1_2E0)) _let_5))) _let_1))) _let_7)) (_let_6 ((c_2Ellist_2ELCONS_2E2 _let_7) (_let_6 ((app_2E2 _let_5) _let_1))))))))))))))) (=> (forall ((V1g_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 ((s _let_7) V3v_2E0))) (let ((_let_9 (s _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_1))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_6 _let_10)) F0_2E0)) _let_4))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4)))))))))))))))) (forall ((V0f_2E0 u)) (exists ((V1g_2E0 u)) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_5))) (= (_let_7 ((app_2E2 _let_4) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) V0f_2E0)) _let_8))) (_let_7 c_2Ellist_2ELNIL_2E0)) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (_let_1 V2l1_2E0))) (let ((_let_7 (_let_5 V0x_2E0))) (=> (= (_let_4 (c_2Ellist_2EtoList_2E1 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_6) _let_2)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_7))) (= _let_7 (_let_5 ((c_2Elist_2EAPPEND_2E2 (_let_5 (c_2Eoption_2ETHE_2E1 (_let_4 (c_2Ellist_2EtoList_2E1 _let_6))))) (_let_5 (c_2Eoption_2ETHE_2E1 (_let_4 (c_2Ellist_2EtoList_2E1 _let_2)))))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1ll1_2E0 u) (V2ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V2ll2_2E0))) (let ((_let_3 (c_2Ellist_2ELMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_5 (_let_1 V1ll1_2E0))) (= (_let_4 (_let_3 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_5) _let_2)))) (_let_4 ((c_2Ellist_2ELAPPEND_2E2 (_let_4 (_let_3 _let_5))) (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (= (exists ((V1n mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V1n))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))))) (forall ((A_27a d) (V0llength__rel_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (and (forall ((V1h_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3t_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V0llength__rel_27_2E0)))) (let ((_let_6 (s _let_4))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 _let_3))) V2n)) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3))))) (mono_2Ec_2Enum_2ESUC V2n)))))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V0llength__rel_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V4a0_2E0 u) (V5a1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V4a0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5a1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) V0llength__rel_27_2E0)) _let_2))) V5a1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (c_2Ellist_2ELTAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))))) (=> (= (_let_6 (_let_7 _let_3)) (_let_6 c_2Eoption_2ENONE_2E0)) (= (_let_6 (_let_7 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_3) _let_2)))) (_let_6 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) (c_2Elist_2EAPPEND_2E1 ((s _let_5) (c_2Eoption_2ETHE_2E1 (_let_6 (c_2Ellist_2EtoList_2E1 _let_3))))))) (_let_6 ((c_2Ellist_2ELTAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_3)))))))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_8) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_8))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__option_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Eencode__option_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (= (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Eoption_2EOPTION__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_4 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (=> (= (_let_4 ((c_2Ellist_2ELTAKE_2E2 _let_3) _let_2)) (_let_4 c_2Eoption_2ENONE_2E0)) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 _let_3) _let_2)) (_let_1 c_2Eoption_2ENONE_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ellist_2Eevery_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ellist_2Eevery_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eexists_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eexists_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_2)))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l1_2E0))) (= (= _let_3 (_let_2 c_2Ellist_2ELNIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l2_2E0))) (let ((_let_4 (_let_2 V1l1_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_5 (c_2Ellist_2ELTL_2E1 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)))) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (_let_5 (c_2Ellist_2ELTL_2E1 _let_3))) (_let_5 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 (_let_2 (c_2Eoption_2ETHE_2E1 (_let_5 (c_2Ellist_2ELTL_2E1 _let_4))))) _let_3))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (and (= (_let_2 (c_2Ellist_2ELFLATTEN_2E1 ((s (tyop_2Ellist_2Ellist _let_1)) c_2Ellist_2ELNIL_2E0))) (_let_2 c_2Ellist_2ELNIL_2E0)) (forall ((V2h_2E0 u) (V3t_2E0 u) (V4tl_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27d))) (let ((_let_2 (s (tyop_2Ellist_2Ellist _let_1)))) (let ((_let_3 (_let_2 V4tl_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V3t_2E0))) (let ((_let_6 (c_2Ellist_2ELCONS_2E2 ((s A_27d) V2h_2E0)))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 (_let_4 (_let_6 _let_5))) _let_3)))) (_let_4 (_let_6 (_let_4 (c_2Ellist_2ELFLATTEN_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_3)))))))))))))) (forall ((V1tl_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 (s (tyop_2Ellist_2Ellist _let_1)))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 (_let_4 c_2Ellist_2ELNIL_2E0)) _let_3)))) (_let_4 (c_2Ellist_2ELFLATTEN_2E1 _let_3)))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27a) V2h_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_6) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))))))))))) (forall ((V4ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V4ll_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eevery_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F7 V1a) V4t) (not (V1a V4t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V19t)) ((F6 V0b) V19t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= ((F5 V0b) V16t) (not (V0b V16t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V14t) (not (V1a V14t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V8t)) ((F2 V0b) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (or (not (V0b V11t)) (not (V1a V11t))) (((F3 V1a) V0b) V11t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V9t)) (not (V1a V9t))) (((F8 V1a) V0b) V9t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F9 V1a) V0b) V12t) (and (V0b V12t) (not (V1a V12t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V20t)) (V1a V20t)) (((F11 V1a) V0b) V20t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V17t) (V0b V17t)) (((F10 V1a) V0b) V17t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V5x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL F1) V1a) V5x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F4 V1a)) V0b) V13x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) V13x))) (forall ((V18x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) V18x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F6 V0b)) ((F11 V1a) V0b)) V18x))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) V15x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F5 V0b)) ((F10 V1a) V0b)) V15x))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) V10x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F3 V1a) V0b)) ((F9 V1a) V0b)) V10x)))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) V7x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (F2 V0b)) ((F8 V1a) V0b)) V7x)))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL F0) (F7 V1a)) V2x))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2Elrep__ok_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ellist_2Elrep__ok_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELHD_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELHD_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (= (_let_4 ((c_2Ellist_2ELNTH_2E2 _let_3) ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_1)))) (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_3) _let_1))))))))))) (forall ((A_27a d)) (and (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Ellist_2Ellist__rep_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2Ellist__abs_2E1 _let_2)))) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 _let_2))))))) (forall ((V0a_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Ellist_2Ellist__abs_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) (c_2Ellist_2Ellist__rep_2E1 _let_2)))) _let_2)))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0g_2E0 u) (V3m_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V0g_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V3m_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F1_2E0)) _let_3))) _let_5)) (_let_4 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)))))))))) (=> (forall ((V0g_2E0 u) (V1fz_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1fz_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_6 ((s _let_5) V0g_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 _let_1))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_11 (_let_7 _let_10))) (= (_let_2 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F0_2E0)) _let_6))) _let_3))) _let_4)) (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F1_2E0)) _let_6))) _let_4) _let_3))))))))))))))) (forall ((V0g_2E0 u) (V1fz_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) ((s _let_2) V0g_2E0)))) ((s _let_1) V1fz_2E0)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0n))))))) (not (= V0n mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (forall ((A_27a d) (V0P_2E0 u) (V1ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2Eevery_2E2 _let_3) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2Eexists_2E2 (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)) ((s (tyop_2Ellist_2Ellist A_27a)) V1x_27_2E0)))) (forall ((V2exists_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (or (exists ((V6h_2E0 u) (V7t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t_2E0))) (and (= (_let_2 V3a0_2E0) (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V6h_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2exists_27_2E0)) _let_3)))))))) (exists ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 ((s A_27a) V4h_2E0))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (and (= (_let_2 V3a0_2E0) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_2 V5t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2exists_27_2E0)) ((s _let_1) V3a0_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2exists_27_2E0)) ((s _let_1) V1x_27_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (= (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Eoption_2EOPTION__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_2))) (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELLENGTH_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) V2x_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3)))) V1d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s _let_3))) (let ((_let_8 ((s (_let_6 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Elift__option_2E2 _let_8) _let_2)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3)))) ((c_2EDecode_2Edecode__option_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__option_2E1 _let_8))) _let_5))) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__option_2E2 ((s (_let_6 _let_3)) (c_2EDecode_2Edec2enc_2E1 _let_5))) _let_2))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0ll_2E0 u) (V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0ll_2E0))) (= (or (exists ((V3l_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (and (= (_let_1 V0ll_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 _let_2) (_let_1 V2t_2E0)))))))) (= _let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 _let_2) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) (_let_1 V2t_2E0)))))))))) (forall ((V4h_2E0 u) (V5t_2E0 u) (V6ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) V4h_2E0)) (_let_1 V5t_2E0)))) (_let_1 V6ll_2E0)))) (exists ((V7l_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (_let_1 V7l_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 (_let_1 V5t_2E0)) _let_2))) (= (_let_1 V6ll_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) V4h_2E0)) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 _let_1) _let_1))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_6 (_let_2 V2ll_2E0))) (=> (and (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_6))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V1m)) (= (_let_5 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_6)) (_let_5 (c_2Eoption_2ESOME_2E1 _let_3)))) (and (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_4 (c_2Ellist_2ELLENGTH_2E1 _let_3))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1m) V0n))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0)))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V0h_2E0)) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2m_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2m_2E0))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4)) (_let_3 ((c_2Eoption_2EOPTION__BIND_2E2 _let_4) ((s ((tyop_2Emin_2Efun _let_1) _let_2)) c_2Ellist_2ELTL_2E0))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V1ll_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_4 ((c_2Ellist_2ELDROP_2E2 _let_5) _let_2)) (_let_4 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5) (_let_4 (c_2Eoption_2ESOME_2E1 _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0ll_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2))) (= (_let_1 (c_2Ellist_2EfromList_2E1 ((s _let_3) (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_3)) (c_2Ellist_2EtoList_2E1 _let_2)))))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Ellist_2ELCONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 A_27a)) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (or (= (_let_1 V0l_2E0) (_let_1 c_2Ellist_2ELNIL_2E0)) (exists ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_1 V0l_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) (_let_1 V2t_2E0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3a_2E0 u)) (let ((_let_1 ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) ((s A_27b) V3a_2E0))))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2EOPTION__JOIN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2EOPTION__JOIN_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2v1_2E0 u) (V3v2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0f_2E0))) (let ((_let_7 (c_2Ellist_2ELUNFOLD_2E2 _let_6))) (let ((_let_8 (_let_1 (_let_7 _let_3)))) (let ((_let_9 (s _let_5))) (let ((_let_10 (_let_9 ((app_2E2 _let_6) _let_3)))) (let ((_let_11 (_let_2 V2v1_2E0))) (let ((_let_12 ((s A_27b) V3v2_2E0))) (and (=> (= _let_10 (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_11) _let_12))))) (= _let_8 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_12) (_let_1 (_let_7 _let_11)))))) (=> (= _let_10 (_let_9 c_2Eoption_2ENONE_2E0)) (= _let_8 (_let_1 c_2Ellist_2ELNIL_2E0))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Ellist_2ELNIL_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (or (and (= (_let_2 ((app_2E2 (_let_5 V1g_2E0)) _let_4)) _let_3) (= (_let_2 ((app_2E2 (_let_5 V0f_2E0)) _let_4)) _let_3)) (exists ((V3h_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (app_2E2 (_let_4 V1g_2E0)))) (let ((_let_6 (s _let_3))) (let ((_let_7 (c_2Ellist_2ELCONS_2E2 ((s A_27b) V3h_2E0)))) (let ((_let_8 (_let_1 V2x_2E0))) (let ((_let_9 (app_2E2 (_let_4 V0f_2E0)))) (and (= (_let_6 (_let_9 _let_8)) (_let_6 (_let_7 (_let_6 (_let_9 _let_2))))) (= (_let_6 (_let_5 _let_8)) (_let_6 (_let_7 (_let_6 (_let_5 _let_2))))))))))))))))))))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 ((app_2E2 (_let_3 V0f_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V1g_2E0)) _let_1)))))))))) (forall ((V0mopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1nopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (exists ((V2R (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (and (forall ((V3m mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V4n mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (let ((_let_2 (= V3m _let_1))) (let ((_let_3 (mono_2Ec_2Eoption_2EOPTION__MAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2EPRE))) (let ((_let_4 (= V4n _let_1))) (=> ((V2R V3m) V4n) (or (and _let_2 _let_4) (and (not _let_4) ((V2R (_let_3 V3m)) (_let_3 V4n)) (not _let_2))))))))) ((V2R V0mopt) V1nopt))) (= V0mopt V1nopt))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 (c_2Ellist_2EtoList_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_2)))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_4))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0LFINITE_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (and (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ellist_2ELFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0))))) (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V3a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) _let_2))))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27c)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELTAKE_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2Ellist__rep_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2Ellist__rep_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_3 (c_2Ellist_2ELHD_2E1 (_let_2 (c_2Ellist_2ELREPEAT_2E1 _let_1)))) (_let_3 (c_2Ellist_2ELHD_2E1 (_let_2 (c_2Ellist_2EfromList_2E1 _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (=> (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V2l1_2E0)))) (exists ((V3l2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_5 (_let_2 V1ll_2E0))) (and (= (_let_2 ((c_2Ellist_2ELAPPEND_2E2 (_let_2 (c_2Ellist_2EfromList_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l1_2E0)))) _let_3)) _let_5) (= (_let_4 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_5)) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ewellorder_2Eremove_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Ewellorder_2Eremove_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (=> (forall ((V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (= V0limopt (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) (F0 V0limopt))) (forall ((V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s (tyop_2Eoption_2Eoption _let_5)))) (= (_let_7 (c_2Ellist_2ELTL_2E1 (_let_6 ((c_2Ellist_2ELGENLIST_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0limopt)))))) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V0limopt)))) (_let_7 c_2Eoption_2ENONE_2E0)) (_let_7 (c_2Eoption_2ESOME_2E1 (_let_6 ((c_2Ellist_2ELGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Eoption_2EOPTION__MAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2EPRE) V0limopt)))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_3 (_let_2 (_let_1 V0ll1_2E0))) (_let_3 (_let_2 (_let_1 V1ll2_2E0)))))))) (= (_let_1 V0ll1_2E0) (_let_1 V1ll2_2E0))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0l_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1t_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) F0_2E0)) _let_2))) _let_5)) (_let_4 ((c_2Ellist_2ELAPPEND_2E2 _let_5) (_let_4 (c_2Ellist_2ELREPEAT_2E1 _let_2)))))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_3)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_5 (c_2Ellist_2ELTL_2E1 (_let_4 (c_2Ellist_2ELREPEAT_2E1 _let_2)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) F0_2E0)) _let_2))) (_let_5 (c_2Ellist_2ELTL_2E1 (_let_4 (c_2Ellist_2EfromList_2E1 _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Ellist_2ELCONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0LFINITE_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0)))) (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3))))))))))))) (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V3a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Ewellorder_2Ewellorder A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2ETHE_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2ETHE_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Errestrict_2E0)) _let_5))) _let_2)))))))))) (= (_let_387 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Eoption_2EOPTION__MAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_387 c_2Eoption_2EOPTION__MAP_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0ll_2E0))) (= (_let_2 ((c_2Ellist_2ELUNFOLD_2E2 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) c_2Ellist_2ELTL__HD_2E0)) _let_3)) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (F0 V2x) (= V2x mono_2Ec_2Enum_2E0))) (forall ((V0t_2E0 u) (V1h_2E0 u) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s A_27a) V1h_2E0))) (= (_let_4 ((c_2Ellist_2Ellist__rep_2E2 (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2x)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V2x)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_5))) (_let_4 ((c_2Ellist_2Ellist__rep_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V2ll_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) F3_2E0)) ((s _let_1) V2ll_2E0)))) ((s A_27a) V3x_2E0)))) (exists ((V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4i))) ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V3x_2E0)))))))))) (=> (forall ((V2ll_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V2ll_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_3))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F3_2E0)) _let_3))) _let_1))))))))))))))) (=> (forall ((V2ll_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (= (exists ((V7i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (and (= (_let_2 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V7i))) _let_3)) (_let_2 (c_2Eoption_2ESOME_2E1 (_let_1 V5x_2E0)))) (= (_let_2 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V8j))) _let_3)) (_let_2 (c_2Eoption_2ESOME_2E1 (_let_1 V6y_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V7i) V8j))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F2_2E0)) ((s _let_2) V2ll_2E0)))) (_let_1 V5x_2E0)))) (_let_1 V6y_2E0))))))))))) (=> (forall ((V2ll_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 ((s _let_4) V2ll_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_10) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_6 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_9 _let_14)) F1_2E0)) _let_5))) _let_3))) _let_2)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))))) (forall ((V0lo_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1X_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0lo_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_2) _let_1)))) (exists ((V2ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V2ll_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_6 _let_5)))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 (s (_let_9 tyop_2Emin_2Ebool)))) (let ((_let_11 (_let_6 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_12 (s (_let_6 tyop_2Emin_2Ebool)))) (and (= (_let_12 V1X_2E0) (_let_12 (c_2Epred__set_2EGSPEC_2E1 ((s _let_11) ((app_2E2 ((s (_let_8 _let_11)) F0_2E0)) _let_2))))) (= (_let_10 V0lo_2E0) (_let_10 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_9 _let_5)) (c_2Epair_2EUNCURRY_2E1 ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F1_2E0)) _let_2))))))) (forall ((V9i mono_2Etyop_2Enum_2Enum) (V10j mono_2Etyop_2Enum_2Enum) (V11x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V11x_2E0))))) (let ((_let_3 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V9i))) _let_3)) _let_2) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V10j))) _let_3)) _let_2)) (= V9i V10j))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V1l_2E0))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_1)))) (=> (and (= (_let_6 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_5)) (_let_6 (c_2Eoption_2ESOME_2E1 _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2ELFINITE_2E1 _let_5))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2ELFINITE_2E1 _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1f_2E0 u)) (let ((_let_1 (= V0n (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_3 (_let_2 ((c_2Ellist_2ELGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0n)))))) (let ((_let_4 (_let_2 c_2Ellist_2ELNIL_2E0))) (and (= (= _let_3 _let_4) _let_1) (= (= _let_4 _let_3) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V0g_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V0g_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_7 ((s _let_6) V1f_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_3 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_5))) _let_1)) (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_7) ((s _let_2) ((app_2E2 _let_5) _let_1))))))))))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s _let_2) V0g_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2Elrep__ok_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) ((s _let_5) V1f_2E0)))) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ellist_2Elrep__ok_2E1 _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EAPPEND_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Elist_2EAPPEND_2E0)) _let_2))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (= (_let_2 (c_2Ellist_2ELTL__HD_2E1 ((s _let_1) c_2Ellist_2ELNIL_2E0))) (_let_2 c_2Eoption_2ENONE_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Esorting_2ESORTED_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2E_3C) ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_2B V1k)) V0n))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ellist_2Eexists_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ellist_2Eexists_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Eminimal__elements_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2EOPTION__JOIN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2EOPTION__JOIN_2E0)) _let_3)))))))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_2 (c_2Ellist_2ELHD_2E1 (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_3 V0t_2E0))))) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) V0f_2E0)))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (let ((_let_4 (s _let_2))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eoption_2EIS__SOME_2E1 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eoption_2EIS__SOME_2E1 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n)))))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2l_2E0 u) (V3e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V3e_2E0))) (let ((_let_4 (_let_2 V2l_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_7)) F1_2E0)) _let_4))) _let_3)) (_let_6 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_2 ((c_2Elist_2ECONS_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2l_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (s _let_3))) (let ((_let_7 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_8 ((s _let_7) V1ll_2E0))) (let ((_let_9 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_10 (_let_5 _let_3))) (let ((_let_11 ((tyop_2Emin_2Efun _let_7) _let_10))) (= (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_11)) F0_2E0)) _let_9))) _let_8))) _let_2)) (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) ((c_2Ellist_2ELNTH_2E2 _let_9) _let_8))) (_let_6 c_2Eoption_2ENONE_2E0)) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F1_2E0)) _let_2))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V1ll_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_5) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_2)) (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 (_let_9 ((c_2Ellist_2ELTAKE_2E2 _let_4) _let_2))) (_let_9 c_2Eoption_2ENONE_2E0)) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) F0_2E0)) _let_4))) _let_2)))))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3m_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (s _let_2))) (let ((_let_9 (_let_8 V3m_2E0))) (let ((_let_10 (_let_7 _let_2))) (= (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_10)) F1_2E0)) _let_5))) _let_9)) (_let_8 ((c_2Eoption_2EOPTION__BIND_2E2 _let_9) ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (c_2Epair_2EUNCURRY_2E1 ((s (_let_3 _let_6)) ((c_2Ecombin_2Eo_2E2 ((s (_let_7 _let_6)) c_2Ecombin_2EK_2E0)) _let_5)))))))))))))))))) (=> (forall ((V0f_2E0 u) (V1z_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s A_27b) V1z_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_12 (s _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_11))) (let ((_let_14 (_let_4 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_6))) _let_1))) _let_8)) (_let_12 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27a)) c_2Epair_2ESND_2E0)) (_let_7 (((c_2Earithmetic_2EFUNPOW_2E3 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_6))) _let_8) (_let_7 ((app_2E2 _let_6) _let_1)))))))))))))))))))))) (forall ((V0f_2E0 u) (V1z_2E0 u)) (let ((_let_1 ((s A_27b) V1z_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 (c_2Ellist_2Ellist__abs_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1)))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (V0ll_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V1n))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Elinear__order_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2EfromList_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2EfromList_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELHD_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELHD_2E0)) _let_2)))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1m_2E0 u) (V3x_2E0 u) (V0R_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V0R_2E0))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 V1m_2E0))) (let ((_let_11 (app_2E2 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_5))) (let ((_let_13 (_let_4 _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_13)) F2_2E0)) _let_10))) _let_3))) _let_7))) _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_3))) _let_2))))))))))))))))))) (=> (forall ((V0R_2E0 u) (V1m_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 ((s A_27a) V3x_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 V1m_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_1 _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_8 _let_13)) F1_2E0)) _let_4))) _let_7))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__FORALL_2E2 (_let_6 (c_2Equotient_2Erespects_2E1 _let_4))) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F2_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))))))) (=> (forall ((V1m_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1m_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0R_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1m_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_1 _let_2))) (let ((_let_8 ((s _let_7) V0R_2E0))) (let ((_let_9 (_let_3 (c_2Equotient_2Erespects_2E1 _let_8)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_8) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__FORALL_2E2 _let_9) (_let_3 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_5)) F1_2E0)) _let_8))) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__EXISTS_2E2 _let_9) (_let_3 ((app_2E2 (_let_6 F0_2E0)) _let_4)))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 X1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELGENLIST_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELGENLIST_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 tyop_2Estring_2Echar)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0ll_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 _let_4) ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))))) (_let_1 c_2Eoption_2ENONE_2E0))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EEncode_2Elift__sum_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EEncode_2Elift__sum_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epred__set_2ECHOICE_2E0)) _let_2))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Ellist_2ELCONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l1_2E0))) (= (= _let_3 (_let_2 c_2Ellist_2ELNIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l1_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (_let_2 V0l2_2E0))) (= (_let_4 (c_2Ellist_2ELHD_2E1 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_3) _let_5)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (_let_4 (c_2Ellist_2ELHD_2E1 _let_5))) (_let_4 (c_2Ellist_2ELHD_2E1 _let_3))))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist _let_1)) V0ll_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 c_2Ellist_2ELNIL_2E0))) (= (= (_let_3 (c_2Ellist_2ELFLATTEN_2E1 _let_2)) _let_4) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eevery_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_4))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1g_2E0 u) (V4v1_2E0 u) (V5v2_2E0 u)) (let ((_let_1 ((s A_27a) V4v1_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V1g_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 ((s A_27b) V5v2_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_9 (_let_3 _let_8))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F1_2E0)) _let_5))) _let_1))) _let_7)) (_let_6 ((c_2Ellist_2ELCONS_2E2 _let_7) (_let_6 ((app_2E2 _let_5) _let_1))))))))))))))) (=> (forall ((V1g_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 ((s _let_7) V3v_2E0))) (let ((_let_9 (s _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_1))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_6 _let_10)) F0_2E0)) _let_4))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4)))))))))))))))) (forall ((V0f_2E0 u) (V1g_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_5))) (= (_let_7 ((app_2E2 _let_4) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) V0f_2E0)) _let_8))) (_let_7 c_2Ellist_2ELNIL_2E0)) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))))))))))))))) (forall ((V6y_2E0 u)) (let ((_let_1 ((s A_27a) V6y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V1g_2E0)) _let_1)) (_let_4 ((c_2Ellist_2ELUNFOLD_2E2 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) V0f_2E0)) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V2l_2E0))) (let ((_let_2 (c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_4 (_let_2 ((s (tyop_2Ellist_2Ellist A_27b)) ((c_2Ellist_2ELMAP_2E2 _let_3) _let_1)))) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 _let_3) ((s (tyop_2Eoption_2Eoption A_27a)) (_let_2 _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4t_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27c) V3h_2E0)) _let_3)))) (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_3))))))))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) ((s _let_1) c_2Ellist_2ELNIL_2E0))) (_let_2 c_2Eoption_2ENONE_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ellist_2ELAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Eoption_2EOPTION__MAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_6))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (s _let_7))) (= (_let_10 ((c_2Epair_2E_23_23_2E2 _let_5) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Epair_2E_23_23_2E0)) _let_5))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) ((tyop_2Epair_2Eprod _let_3) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_23_23_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epair_2E_23_23_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V1))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0P_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (= (_let_1 ((c_2Ellist_2ELFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) _let_2)))) (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (c_2Ellist_2ELFILTER_2E2 _let_3))) (let ((_let_5 (_let_1 (_let_4 _let_2)))) (let ((_let_6 ((s A_27b) V2h_2E0))) (let ((_let_7 (c_2Ellist_2ELCONS_2E2 _let_6))) (= (_let_1 (_let_4 (_let_1 (_let_7 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_6))) (_let_1 (_let_7 _let_5))) _let_5))))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_3 (_let_2 (c_2Ellist_2ELREPEAT_2E1 _let_1)))) (= _let_3 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 (_let_2 (c_2Ellist_2EfromList_2E1 _let_1))) _let_3))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (or (= V0s V1t) ((mono_2Ec_2Estring_2Estring__lt V1t) V0s) ((mono_2Ec_2Estring_2Estring__lt V0s) V1t))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Ellist_2Ellist A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_2) _let_1)))) (=> (forall ((V0x_2E0 u) (V1y_2E0 u) (V3ll1_2E0 u) (V4ll2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4ll2_2E0))) (let ((_let_4 ((s A_27b) V1y_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V3ll1_2E0))) (let ((_let_8 ((s A_27a) V0x_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_5) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) _let_12))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_13)) F0_2E0)) _let_8))) _let_4))) _let_7))) _let_3)) (_let_10 ((c_2Epair_2E_2C_2E2 (_let_6 ((c_2Ellist_2ELCONS_2E2 _let_8) _let_7))) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3))))))))))))))))))) (and (= (_let_3 (c_2Ellist_2ELUNZIP_2E1 ((s (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b))) c_2Ellist_2ELNIL_2E0))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s _let_2) c_2Ellist_2ELNIL_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0)))) (forall ((V0x_2E0 u) (V1y_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s (tyop_2Ellist_2Ellist _let_1)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((s A_27b) V1y_2E0))) (let ((_let_9 ((s A_27a) V0x_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) ((tyop_2Emin_2Efun _let_4) _let_6)))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_10))) (= (_let_7 (c_2Ellist_2ELUNZIP_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_9) _let_8))) _let_3)))) (_let_7 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_11)) F0_2E0)) _let_9))) _let_8))))) (_let_7 (c_2Ellist_2ELUNZIP_2E1 _let_3))))))))))))))))))))))) (= (_let_386 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum)) (_let_386 c_2Eoption_2ETHE_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELUNFOLD_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) F0_2E0)) ((s _let_3) V0f_2E0)))) ((s _let_2) V1g_2E0)))) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_7 ((s (_let_4 _let_6)) V1g_2E0))) (let ((_let_8 (s (tyop_2Eoption_2Eoption _let_6)))) (= (_let_8 (c_2Ellist_2ELTL_2E1 ((s _let_6) ((app_2E2 _let_7) _let_1)))) (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 ((s (_let_5 _let_6)) ((c_2Ecombin_2Eo_2E2 _let_7) ((s (_let_5 A_27a)) c_2Epair_2EFST_2E0)))) ((s _let_3) ((app_2E2 ((s (_let_4 _let_3)) V0f_2E0)) _let_1)))))))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27b))) (= (_let_5 (c_2Ellist_2ELHD_2E1 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) V1g_2E0)) _let_1)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) c_2Epair_2ESND_2E0)) ((s _let_3) ((app_2E2 ((s (_let_4 _let_3)) V0f_2E0)) _let_1))))))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (tyop_2Ellist_2Ellist A_27b))) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F0_2E0)) ((s _let_2) V0f_2E0)))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (forall ((V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0ll_2E0))) (=> (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_3) _let_2)) _let_3) (= _let_2 (_let_1 c_2Ellist_2ELNIL_2E0))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u) (V2ll3_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V2ll3_2E0))) (let ((_let_3 (_let_1 V1ll2_2E0))) (let ((_let_4 (c_2Ellist_2ELAPPEND_2E2 (_let_1 V0ll1_2E0)))) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 ((s _let_3) V2ll_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 ((c_2Ellist_2ELNTH_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0a) V1b)))) _let_4)) (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption _let_3)) ((c_2Ellist_2ELDROP_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0a))) _let_4))) ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (c_2Ellist_2ELNTH_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1b))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V2t_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) A_27a))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) F1_2E0)) _let_1))) _let_3)) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_1))))))))))))) (=> (forall ((V0l_2E0 u) (V1h_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((s _let_2) V0l_2E0))) (let ((_let_8 (s _let_3))) (let ((_let_9 (_let_6 _let_3))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_4 _let_9)) F0_2E0)) _let_7))) _let_1)) (_let_8 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption _let_2)) (c_2Ellist_2ELTL_2E1 _let_7))) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_1))))))))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 (c_2Ellist_2ELTL__HD_2E1 _let_2)) (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Ellist_2ELHD_2E1 _let_2))) ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0s) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2EEXPLODE V0s)))) (forall ((A_27a d)) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3ll_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_3))) ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_3)))))) (= (_let_2 ((c_2Ellist_2ELAPPEND_2E2 (_let_2 (c_2Ellist_2EfromList_2E1 ((s _let_5) (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_5)) ((c_2Ellist_2ELTAKE_2E2 _let_4) _let_3))))))) (_let_2 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) ((c_2Ellist_2ELDROP_2E2 _let_4) _let_3)))))) _let_3)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_3)))) (= (_let_2 ((c_2Ellist_2ELAPPEND_2E2 (_let_2 (c_2Ellist_2EfromList_2E1 ((s _let_5) (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_5)) ((c_2Ellist_2ELTAKE_2E2 _let_4) _let_3))))))) (_let_2 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) ((c_2Ellist_2ELDROP_2E2 _let_4) _let_3)))))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ellist_2ELFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (and (= (_let_1 (c_2Ellist_2EfromList_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Ellist_2ELNIL_2E0)) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_4 ((s A_27a) V0h_2E0))) (= (_let_3 (c_2Ellist_2EfromList_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))) (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_4) (_let_3 (c_2Ellist_2EfromList_2E1 _let_2))))))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (_let_1 V1l1_2E0))) (= (and (= _let_4 _let_2) (= _let_3 _let_2)) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_3))) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V1))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V2x_2E0))))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1l_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> (= (_let_1 ((c_2Ellist_2ELNTH_2E2 _let_6) _let_5)) _let_2) (= (_let_1 (c_2Ellist_2ELHD_2E1 (_let_4 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_3)) ((c_2Ellist_2ELDROP_2E2 _let_6) _let_5)))))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1k2 mono_2Etyop_2Enum_2Enum) (V3ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V3ll_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1k2)))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_4))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6)) F0_2E0)) _let_3))) _let_2)) (_let_5 ((c_2Ellist_2ELDROP_2E2 _let_3) _let_2)))))))))) (forall ((V0k1 mono_2Etyop_2Enum_2Enum) (V1k2 mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_5 (s _let_3))) (let ((_let_6 ((s _let_2) V2x_2E0))) (= (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0k1) V1k2)))) _let_6)) (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 (_let_5 ((c_2Ellist_2ELDROP_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0k1))) _let_6))) (_let_5 c_2Eoption_2ENONE_2E0)) ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1k2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1d1_2E0 u) (V2d2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) V2d2_2E0))) (let ((_let_4 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d1_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 (tyop_2Emin_2Efun _let_5))) (let ((_let_7 ((s (_let_6 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_8 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))))) (= (_let_8 (((c_2EDecode_2Edecode__sum_2E3 _let_7) _let_4) _let_3)) (_let_8 ((c_2EDecode_2Eenc2dec_2E2 _let_7) ((s (_let_6 _let_1)) ((c_2EEncode_2Eencode__sum_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_4))) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3)))))))))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELDROP_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELDROP_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2Elinear__order__to__list__f_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2Elinear__order__to__list__f_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_8) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_8))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0_2E0 u)) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= (= V2n mono_2Ec_2Enum_2E0) (F1 V2n))) (=> (forall ((V0h_2E0 u) (V1t_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V1t_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((s A_27a) V0h_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) F0_2E0)) _let_6))) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F1 V2n)))) (_let_5 (c_2Eoption_2ESOME_2E1 _let_6))) (_let_5 ((c_2Ellist_2Ellist__rep_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))))))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 ((s A_27a) V0h_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3)) (_let_2 (c_2Ellist_2Ellist__abs_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) F0_2E0)) _let_4))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V1f_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_5 (c_2Ellist_2ELHD_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27a)) c_2Epair_2ESND_2E0)) ((s _let_3) ((app_2E2 _let_4) _let_1))))))))))) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27d) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_5)) c_2Ellist_2ELCONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27c d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27c) A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2Einftree_2EiNd_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Einftree_2EiNd_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Einftree_2EiLf_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Einftree_2EiLf_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0relrec_27_2E0 u)) (=> (and (forall ((V1lf_2E0 u) (V2nd_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 ((s _let_2) V1lf_2E0))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) _let_7))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) V0relrec_27_2E0)) _let_3))) ((s _let_5) V2nd_2E0)))) ((s _let_4) (c_2Einftree_2EiLf_2E1 _let_1))))) ((s A_27b) ((app_2E2 _let_3) _let_1)))))))))))))) (forall ((V4lf_2E0 u) (V5nd_2E0 u) (V6b_2E0 u) (V7df_2E0 u) (V8g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s A_27c) V6b_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) V5nd_2E0))) (let ((_let_7 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (=> (forall ((V9d_2E0 u)) (let ((_let_1 ((s A_27d) V9d_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun _let_3) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) V0relrec_27_2E0)) ((s _let_6) V4lf_2E0)))) ((s _let_5) V5nd_2E0)))) ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V7df_2E0)) _let_1))))) ((s A_27b) ((app_2E2 ((s _let_3) V8g_2E0)) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) V0relrec_27_2E0)) ((s _let_8) V4lf_2E0)))) _let_6))) ((s _let_7) ((c_2Einftree_2EiNd_2E2 _let_3) ((s (_let_1 _let_7)) V7df_2E0)))))) ((s A_27b) ((app_2E2 ((s _let_4) ((app_2E2 _let_6) _let_3))) ((s _let_2) V8g_2E0)))))))))))))))))))) (forall ((V10a0_2E0 u) (V11a1_2E0 u) (V12a2_2E0 u) (V13a3_2E0 u)) (let ((_let_1 ((s A_27b) V13a3_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_3 ((s _let_2) V12a2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_5 ((s _let_4) V11a1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s _let_6) V10a0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Einftree_2Erelrec_2E4 _let_7) _let_5) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) V0relrec_27_2E0)) _let_7))) _let_5))) _let_3))) _let_1)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0a_2E0 u) (V1p_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Elist_2Elist A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_1))) ((s _let_4) V1p_2E0))) (_let_3 (c_2Esum_2EINL_2E1 _let_1))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27c)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_3 (s (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c)))) (= (_let_3 (c_2Einftree_2EiLf_2E1 _let_1)) (_let_3 (c_2Einftree_2Eto__inftree_2E1 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F0_2E0)) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1b_2E0 u) (V2a_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 (s _let_1))) (not (= (_let_2 (c_2Einftree_2EiLf_2E1 ((s A_27a) V2a_2E0))) (_let_2 ((c_2Einftree_2EiNd_2E2 ((s A_27b) V1b_2E0)) ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V0f_2E0)))))))) (and (forall ((V1r mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V1r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (= (mono_2Ec_2Estring_2EORD (mono_2Ec_2Estring_2ECHR V1r)) V1r))) (forall ((V0a mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Estring_2EORD V0a)) V0a))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27d d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6p_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (= _let_3 (_let_2 c_2Elist_2ENIL_2E0))))))) (=> (forall ((V4b_2E0 u) (V3f_2E0 u) (V6p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6p_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) _let_6))) (let ((_let_8 ((s _let_7) V3f_2E0))) (let ((_let_9 (s _let_6))) (let ((_let_10 (s _let_4))) (let ((_let_11 ((s A_27b) V4b_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_6))) (= (_let_10 ((app_2E2 (_let_9 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_12)) F1_2E0)) _let_11))) _let_8))) _let_3)) (_let_10 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (_let_10 (c_2Esum_2EINR_2E1 _let_11))) (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) ((s A_27d) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))))))) (=> (forall ((V1a_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s A_27a) V1a_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Elist_2Elist A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_1))) ((s _let_4) V2p_2E0))) (_let_3 (c_2Esum_2EINL_2E1 _let_1))))))))) (forall ((V0is__tree_27_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V1a_2E0)))))))) (forall ((V3f_2E0 u) (V4b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (=> (forall ((V5d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_1)) V3f_2E0)) ((s A_27d) V5d_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F1_2E0)) ((s A_27b) V4b_2E0)))) ((s _let_2) V3f_2E0)))))))))))) (forall ((V7a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) V7a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Einftree_2Eis__tree_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Einftree_2EiLf_2E1 ((s A_27a) V1a_2E0)))))))) (forall ((V2b_2E0 u) (V3f_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (=> (forall ((V4d_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V3f_2E0)) ((s A_27c) V4d_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((c_2Einftree_2EiNd_2E2 ((s A_27b) V2b_2E0)) ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V3f_2E0)))))))))) (forall ((V5t_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V5t_2E0)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2p_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F1_2E0)) _let_3))) (= _let_3 (_let_2 c_2Elist_2ENIL_2E0))))))) (=> (forall ((V0b_2E0 u) (V1f_2E0 u) (V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2p_2E0))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_8 (s _let_7))) (let ((_let_9 ((s A_27b) V0b_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (_let_10 _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_3)) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_10 tyop_2Emin_2Ebool)) F1_2E0)) _let_3))) (_let_8 (c_2Esum_2EINR_2E1 _let_9))) (_let_8 ((c_2Einftree_2Efrom__inftree_2E2 ((s _let_4) ((app_2E2 _let_6) ((s A_27c) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))))))) (forall ((V0b_2E0 u) (V1f_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 ((s A_27b) V0b_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27c)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Einftree_2EiNd_2E2 _let_4) _let_3)) (_let_7 (c_2Einftree_2Eto__inftree_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) F0_2E0)) _let_4))) _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27c) _let_1)) A_27d)))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27d))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s A_27d))) (= (_let_9 (((c_2Einftree_2Einftree__CASE_2E3 _let_6) _let_5) _let_3)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_8)) c_2Einftree_2Einftree__CASE_2E0)) _let_6))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0lf_2E0 u) (V1nd_2E0 u)) (exists ((V2f_2E0 u)) (and (forall ((V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 (s A_27d))) (let ((_let_3 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27d)) V2f_2E0)) ((s _let_3) (c_2Einftree_2EiLf_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27d)) V0lf_2E0)) _let_1))))))) (forall ((V4b_2E0 u) (V5d_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V5d_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_1) A_27d)) V2f_2E0))) (let ((_let_6 (_let_2 A_27d))) (let ((_let_7 ((s A_27b) V4b_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_6) A_27d))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s A_27d))) (= (_let_10 ((app_2E2 _let_5) ((s _let_1) ((c_2Einftree_2EiNd_2E2 _let_7) _let_4)))) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_9)) V1nd_2E0)) _let_7))) _let_4))) ((s _let_6) ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Estring_2Echar))) (= (_let_2 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_3)) (_let_2 _let_3))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (F0_2E0 u)) (=> (forall ((V7x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7x_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0x_2E0 u)) (= (forall ((V1is__tree_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (forall ((V2a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (or (exists ((V3a_2E0 u)) (forall ((V4x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27d))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) V2a0_2E0)) ((s _let_3) V4x_2E0))) (_let_2 (c_2Esum_2EINL_2E1 ((s A_27a) V3a_2E0))))))))) (exists ((V5f_2E0 u) (V6b_2E0 u)) (and (forall ((V8d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_1)) V5f_2E0)) ((s A_27d) V8d_2E0)))))))) (forall ((V7x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7x_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s _let_4))) (= (_let_8 ((app_2E2 (_let_7 V2a0_2E0)) _let_3)) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (_let_8 (c_2Esum_2EINR_2E1 ((s A_27b) V6b_2E0)))) (_let_8 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_6)) V5f_2E0)) ((s A_27d) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1is__tree_27_2E0)) ((s _let_1) V2a0_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1is__tree_27_2E0)) ((s _let_1) V0x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b))) V0x_2E0)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V0lf_2E0 u) (V1nd_2E0 u) (V2t_2E0 u) (V3r_2E0 u)) (let ((_let_1 ((s A_27a) V3r_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27b) A_27c) A_27d))) (let ((_let_3 ((s _let_2) V2t_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27a)) A_27a)))) (let ((_let_5 ((s _let_4) V1nd_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_7 ((s _let_6) V0lf_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_5))) _let_3))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Einftree_2Erelrec_2E4 _let_7) _let_5) _let_3) _let_1)))))))))))))))) (forall ((V0lf_2E0 u) (V1nd_2E0 u) (V2t_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27b) A_27c) A_27d))) (let ((_let_2 ((s _let_1) V2t_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27a)) A_27a)))) (let ((_let_4 ((s _let_3) V1nd_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_6 ((s _let_5) V0lf_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s A_27a))) (= (_let_10 (((c_2Einftree_2Einftree__rec_2E3 _let_6) _let_4) _let_2)) (_let_10 (c_2Emin_2E_40_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d)) (and (forall ((V0a_2E0 u)) (let ((_let_1 (s (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Einftree_2Eto__inftree_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b))) (c_2Einftree_2Efrom__inftree_2E1 _let_2)))) _let_2)))) (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b))))) (let ((_let_2 (_let_1 V1r_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 _let_2))) (= (_let_1 (c_2Einftree_2Efrom__inftree_2E1 ((s (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d)) (c_2Einftree_2Eto__inftree_2E1 _let_2)))) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27d))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27d)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Einftree_2EiLf_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Einftree_2EiLf_2E0)) _let_1))))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27c) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0x_2E0 u) (V1x_27_2E0 u) (V2x_27_27_2E0 u) (V3x_27_27_27_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b))) V1x_27_2E0)) ((s (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d)) V2x_27_27_2E0)) ((s A_27b) V3x_27_27_27_2E0)))) (forall ((V4relrec_27_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (=> (forall ((V5a0_2E0 u) (V6a1_2E0 u) (V7a2_2E0 u) (V8a3_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (=> (or (exists ((V9a_2E0 u)) (let ((_let_1 ((s A_27a) V9a_2E0))) (let ((_let_2 (s (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 V8a3_2E0) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V5a0_2E0)) _let_1))) (= (_let_2 V7a2_2E0) (_let_2 (c_2Einftree_2EiLf_2E1 _let_1)))))))) (exists ((V10b_2E0 u) (V11df_2E0 u) (V12g_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 ((s A_27c) V10b_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) A_27b))) (let ((_let_7 (s A_27b))) (and (= (_let_7 V8a3_2E0) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_6)) V6a1_2E0)) _let_3))) ((s _let_5) V12g_2E0)))) (forall ((V13d_2E0 u)) (let ((_let_1 ((s A_27d) V13d_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun _let_3) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) V4relrec_27_2E0)) ((s _let_6) V5a0_2E0)))) ((s _let_5) V6a1_2E0)))) ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V11df_2E0)) _let_1))))) ((s A_27b) ((app_2E2 ((s _let_3) V12g_2E0)) _let_1))))))))))))))) (= (_let_4 V7a2_2E0) (_let_4 ((c_2Einftree_2EiNd_2E2 _let_3) ((s (_let_2 _let_1)) V11df_2E0)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) V4relrec_27_2E0)) ((s _let_3) V5a0_2E0)))) ((s _let_2) V6a1_2E0)))) ((s _let_1) V7a2_2E0)))) ((s A_27b) V8a3_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) V4relrec_27_2E0)) ((s _let_3) V0x_2E0)))) ((s _let_2) V1x_27_2E0)))) ((s _let_1) V2x_27_27_2E0)))) ((s A_27b) V3x_27_27_27_2E0)))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27b) A_27c) A_27d))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27a)) A_27a)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27a))) (= (_let_9 (((c_2Einftree_2Einftree__rec_2E3 _let_6) _let_4) _let_2)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Einftree_2Einftree__rec_2E0)) _let_6))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2EChain_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0l_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 _let_3)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2Einftree_2EiNd_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Einftree_2EiNd_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELNTH_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELNTH_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27c)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Einftree_2Eto__inftree_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Einftree_2Eto__inftree_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27b) A_27c) A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27a)) A_27a)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Einftree_2Erelrec_2E4 _let_7) _let_5) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Einftree_2Erelrec_2E0)) _let_7))) _let_5))) _let_3))) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6p_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F2_2E0)) _let_3)))))))) (=> (forall ((V4b_2E0 u) (V3f_2E0 u) (V6p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6p_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) _let_6))) (let ((_let_8 ((s _let_7) V3f_2E0))) (let ((_let_9 (s _let_6))) (let ((_let_10 (s _let_4))) (let ((_let_11 ((s A_27b) V4b_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_6))) (= (_let_10 ((app_2E2 (_let_9 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_12)) F1_2E0)) _let_11))) _let_8))) _let_3)) (_let_10 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (_let_10 (c_2Esum_2EINR_2E1 _let_11))) (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) ((s A_27d) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))))))) (=> (forall ((V1a_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s A_27a) V1a_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Elist_2Elist A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_1))) ((s _let_4) V2p_2E0))) (_let_3 (c_2Esum_2EINL_2E1 _let_1))))))))) (forall ((V0is__tree_27_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V1a_2E0)))))))) (forall ((V3f_2E0 u) (V4b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (=> (forall ((V5d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_1)) V3f_2E0)) ((s A_27d) V5d_2E0))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Einftree_2Eis__tree_2E1 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) ((s _let_1) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F1_2E0)) ((s A_27b) V4b_2E0)))) ((s _let_2) V3f_2E0)))))))))))) (forall ((V7a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) V7a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Einftree_2Eis__tree_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0is__tree_27_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f2_2E0 u) (V1f1_2E0 u) (V2b2_2E0 u) (V3b1_2E0 u) (V4a2_2E0 u) (V5a1_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27c) _let_1)))) (let ((_let_3 (_let_2 V0f2_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V2b2_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (_let_2 V1f1_2E0))) (let ((_let_8 (_let_4 V3b1_2E0))) (let ((_let_9 (s A_27a))) (let ((_let_10 (_let_9 V4a2_2E0))) (let ((_let_11 (_let_9 V5a1_2E0))) (and (= (= _let_11 _let_10) (= (_let_6 (c_2Einftree_2EiLf_2E1 _let_11)) (_let_6 (c_2Einftree_2EiLf_2E1 _let_10)))) (= (and (= _let_7 _let_3) (= _let_8 _let_5)) (= (_let_6 ((c_2Einftree_2EiNd_2E2 _let_8) _let_7)) (_let_6 ((c_2Einftree_2EiNd_2E2 _let_5) _let_3))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (X0 (-> mono_2Etyop_2Enum_2Enum Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Einftree_2Erelrec_2E4 _let_7) _let_5) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Einftree_2Erelrec_2E0)) _let_7))) _let_5))) _let_3))) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2p_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F1_2E0)) _let_3)))))))) (=> (forall ((V0b_2E0 u) (V1f_2E0 u) (V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2p_2E0))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27c) A_27a) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27c) A_27a))) (let ((_let_8 (s _let_7))) (let ((_let_9 ((s A_27a) V0b_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (_let_10 _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_3)) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_10 tyop_2Emin_2Ebool)) F1_2E0)) _let_3))) (_let_8 (c_2Esum_2EINR_2E1 _let_9))) (_let_8 ((c_2Einftree_2Efrom__inftree_2E2 ((s _let_4) ((app_2E2 _let_6) ((s A_27b) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))))))) (forall ((V0b_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (((tyop_2Einftree_2Einftree A_27c) A_27a) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) ((tyop_2Esum_2Esum A_27c) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s _let_2) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) ((s A_27a) V0b_2E0)))) ((s _let_1) V1f_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) ((tyop_2Esum_2Esum A_27c) A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Einftree_2Eis__tree_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Einftree_2Eis__tree_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Epred__set_2ECARD_2E1 _let_2))) V1n)) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Efcp_2EHAS__SIZE_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_3 ((s _let_2) V0v_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1i)))) (_let_4 ((c_2Efcp_2Efcp__index_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1i)))))))))))) (forall ((V0v_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) V0v_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (s (_let_1 A_27b)))) (= (_let_5 (c_2Efcp_2EFCP__TL_2E1 _let_3)) (_let_5 (c_2Efcp_2EFCP_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (A_27s d) (V0M_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s A_27s) V2s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 ((s (_let_2 A_27a)) V0M_2E0))) (let ((_let_4 (_let_2 A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V1f_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 (((c_2EreaderMonad_2EBIND_2E3 _let_3) _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) ((s A_27a) ((app_2E2 _let_3) _let_1))))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Efcp_2Efinite__image A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2Emk__finite__image_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Efcp_2Emk__finite__image_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit1 A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (A_27b d) (V0i mono_2Etyop_2Enum_2Enum) (V1a_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1a_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0i)))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0i) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_4 ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) (c_2Efcp_2EL2V_2E1 _let_1))) _let_3)) (_let_4 ((c_2Elist_2EEL_2E2 _let_3) _let_1))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Ebool_2Eitself tyop_2Eone_2Eone)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_2 ((c_2EreaderMonad_2EUNIT_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2EreaderMonad_2EUNIT_2E0)) _let_3))) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0_2E0 u)) (=> (forall ((V1x mono_2Etyop_2Enum_2Enum) (V5c mono_2Etyop_2Enum_2Enum)) (= ((F1 V1x) V5c) (= V1x V5c))) (=> (forall ((V1x mono_2Etyop_2Enum_2Enum) (V0y_2E0 u) (V4f_2E0 u) (V5c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V5c)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V4f_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V0y_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (= (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1x))))) _let_8))) _let_6))) _let_2)) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F1 V1x) V5c)))) _let_8) (_let_7 ((app_2E2 _let_6) _let_2)))))))))))))))) (forall ((V0y_2E0 u) (V1x mono_2Etyop_2Enum_2Enum) (V2a_2E0 u) (V3b_2E0 u) (V4f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4f_2E0))) (let ((_let_5 ((s A_27a) V0y_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1x)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (= (_let_9 (((c_2Efcp_2E_3A_2B_2E3 _let_6) _let_5) (_let_9 (c_2Efcp_2EFCP_2E1 _let_4)))) (_let_9 (c_2Efcp_2EFCP_2E1 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F0_2E0)) _let_6))) _let_5))) _let_4)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Ebool_2Eitself tyop_2Eone_2Eone)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 (j_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F7 V1a) V4t) (not (V1a V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V8t)) ((F2 V1a) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V10t)) (not (V1a V10t))) (((F3 V1a) V0b) V10t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (((F8 V1a) V0b) V15t) (and (not (V1a V15t)) (V0b V15t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (((F6 V1a) V0b) V17t) (and (not (V0b V17t)) (V1a V17t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F5 V1a) V0b) V14t) (and (V0b V14t) (V1a V14t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V12t) (and (V1a V12t) (V0b V12t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE F0) (F7 V1a)) V2x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE (F2 V1a)) V0b) V7x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V7x))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0b) ((F6 V1a) V0b)) V16x)) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V16x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V13x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F5 V1a) V0b)) ((F8 V1a) V0b)) V13x))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0b) ((F4 V1a) V0b)) V11x)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V11x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V9x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0b) ((F3 V1a) V0b)) V9x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE F1) V1a) V5x)) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V5x))))))))))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= V0l mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0l) mono_2Ec_2Enum_2E0))) (forall ((V0 mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29)) (= (j_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 ((s (tyop_2Ebool_2Eitself tyop_2Eone_2Eone)) (i_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EreaderMonad_2EFMAP_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EreaderMonad_2EFMAP_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2ENULL_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (= (mono_2Ec_2Efcp_2Edimindex_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Ebool_2Ethe__value_2Emono_2Etyop_2Eone_2Eone) _let_152) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27a)) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V0a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Efinite__image A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Efcp_2Emk__finite__image_2E1 ((s A_27a) (c_2Efcp_2Edest__finite__image_2E1 _let_2)))) _let_2)))) (forall ((V1r_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Efcp_2Edest__finite__image_2E1 ((s (tyop_2Efcp_2Efinite__image A_27a)) (c_2Efcp_2Emk__finite__image_2E1 _let_2)))) _let_2) (or (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (= _let_2 (_let_1 c_2Ebool_2EARB_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0t_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_2) A_27a))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (= (_let_6 (c_2Ellist_2ELTL__HD_2E1 (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) _let_4)))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) _let_1)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_2 (_let_1 V0m_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1a)))) (= (_let_1 (((c_2Efcp_2E_3A_2B_2E3 _let_3) ((s A_27a) ((c_2Efcp_2Efcp__index_2E2 _let_2) _let_3))) _let_2)) _let_2))))) (forall ((A_27a d) (A_27b d) (V0g_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0g_2E0))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_4 ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) (c_2Efcp_2EFCP_2E1 _let_3))) _let_2)) (_let_4 ((app_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u)) (= (exists ((V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27b) ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27b) A_27a)) V1v_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i))))))) ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Efcp_2EFCP__EXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0P_2E0)) ((s ((tyop_2Efcp_2Ecart A_27b) A_27a)) V1v_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit0 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EV2L_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EV2L_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V0a_27_2E0 u) (V1a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s (tyop_2Efcp_2Ebit1 A_27a)))) (not (= (_let_2 (c_2Efcp_2EBIT1A_2E1 (_let_1 V1a_2E0))) (_let_2 (c_2Efcp_2EBIT1B_2E1 (_let_1 V0a_27_2E0)))))))) (forall ((V3a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (not (= (_let_1 (c_2Efcp_2EBIT1B_2E1 ((s A_27a) V3a_2E0))) (_let_1 c_2Efcp_2EBIT1C_2E0))))) (forall ((V2a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (not (= (_let_1 (c_2Efcp_2EBIT1A_2E1 ((s A_27a) V2a_2E0))) (_let_1 c_2Efcp_2EBIT1C_2E0))))))) (forall ((A_27a d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit0 A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Efcp_2Ecart _let_1) A_27b))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Efcp_2EFCP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2EFCP_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2ETHE_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2ETHE_2E0)) _let_3)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0v_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 (c_2Efcp_2EFCP__HD_2E1 _let_1)) (_let_2 (c_2Elist_2EHD_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEXISTS_2E0)) _let_4))) _let_2))))))))))) (= (_let_385 (i_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 mono_2Ec_2Ebool_2Ethe__value_2Emono_2Etyop_2Eone_2Eone)) (_let_385 c_2Ebool_2Ethe__value_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27b) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EL2V_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EL2V_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Efinite__image A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2Efcp_2Edest__cart_2E2 _let_4) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2Edest__cart_2E0)) _let_4))) _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2a1_2E0 u) (V3a2_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (= (_let_3 ((c_2Epair_2E_2C_2E2 (_let_2 V2a1_2E0)) (_let_2 V3a2_2E0))) (_let_3 ((((c_2Esorting_2EPART_2E4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 V1L_2E0)) (_let_2 V4l1_2E0)) (_let_2 V5l2_2E0)))) (forall ((V6x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V6x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1L_2E0)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V4l1_2E0)) (_let_1 V5l2_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2a1_2E0)) (_let_1 V3a2_2E0))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 ((tyop_2Esum_2Esum A_27b) A_27c)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Efcp_2EFCP__CONCAT_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Efcp_2EFCP__CONCAT_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (= (forall ((V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_3 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_4 ((c_2Efcp_2Efcp__index_2E2 (_let_3 V0x_2E0)) _let_2)) (_let_4 ((c_2Efcp_2Efcp__index_2E2 (_let_3 V1y_2E0)) _let_2))))))))) (= (_let_1 V0x_2E0) (_let_1 V1y_2E0))))) (= (_let_384 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Eone_2Eone)) (_let_384 c_2Epred__set_2EFINITE_2E0)) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Eone_2Eone) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 (s _let_1))) (=> (forall ((V0f_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F1_2E0)) _let_6))) _let_2))) V2n) (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_1 ((app_2E2 _let_6) (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n)))) _let_2)))))))))))) (=> (forall ((V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (mono_2Ec_2Ebool_2E_3F_21_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F1_2E0)) ((s _let_2) V0f_2E0)))) ((s A_27a) V1x_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V0f_2E0))))))) (= (_let_2 c_2Efcp_2Efinite__index_2E0) (_let_2 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27b) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Efcp_2EFCP__EVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2EFCP__EVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Efcp_2EFCP__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2EFCP__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u) (V1a mono_2Etyop_2Enum_2Enum) (V2v_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_2 (_let_1 V0m_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2v_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1a)))) (=> (= (_let_3 ((c_2Efcp_2Efcp__index_2E2 _let_2) _let_5)) _let_4) (= (_let_1 (((c_2Efcp_2E_3A_2B_2E3 _let_5) _let_4) _let_2)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EL2V_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EL2V_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V0f_2E0 u) (V1a_2E0 u)) (let ((_let_1 ((s A_27a) V1a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Efcp_2Ebit0__size_2E2 _let_2) ((s (tyop_2Efcp_2Ebit0 A_27a)) (c_2Efcp_2EBIT0A_2E1 _let_1))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1))))))))) (forall ((V2f_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V2f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Efcp_2Ebit0__size_2E2 _let_2) ((s (tyop_2Efcp_2Ebit0 A_27a)) (c_2Efcp_2EBIT0B_2E1 _let_1))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (= (forall ((V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_3 ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0f_2E0)) _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1g_2E0)) _let_2)))))))) (= (_let_1 (c_2Efcp_2EFCP_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1g_2E0))) (_let_1 V0f_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0f0_2E0 u) (V1f1_2E0 u) (V2f2_2E0 u)) (exists ((V3fn_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Efcp_2Ebit1 A_27a))) (and (forall ((V4a_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (tyop_2Efcp_2Ebit1 A_27a))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) V3fn_2E0)) ((s _let_3) (c_2Efcp_2EBIT1A_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f0_2E0)) _let_1))))))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) V3fn_2E0)) ((s _let_2) c_2Efcp_2EBIT1C_2E0))) (_let_1 V2f2_2E0)) (forall ((V5a_2E0 u)) (let ((_let_1 ((s A_27a) V5a_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (tyop_2Efcp_2Ebit1 A_27a))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) V3fn_2E0)) ((s _let_3) (c_2Efcp_2EBIT1B_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f1_2E0)) _let_1)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0g_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_3 ((s _let_2) V0g_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))) _let_1)) (_let_4 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1))))))))) (forall ((V0g_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0g_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_2 (c_2Efcp_2EFCP_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_3)))) _let_3)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) ((tyop_2Esum_2Esum A_27b) tyop_2Eone_2Eone)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EL2V_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EL2V_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Efcp_2Ebit1__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2Ebit1__size_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 c_2Esorting_2EPERM_2E0) (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 c_2Esorting_2EPERM__SINGLE__SWAP_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f0_2E0 u) (V1f1_2E0 u)) (exists ((V2fn_2E0 u)) (and (forall ((V4a_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (tyop_2Efcp_2Ebit0 A_27a))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) V2fn_2E0)) ((s _let_3) (c_2Efcp_2EBIT0B_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f1_2E0)) _let_1))))))) (forall ((V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (tyop_2Efcp_2Ebit0 A_27a))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) V2fn_2E0)) ((s _let_3) (c_2Efcp_2EBIT0A_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f0_2E0)) _let_1)))))))))) (forall ((A_27a d) (V0bit1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 _let_4))) (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V0bit1_2E0)) (_let_3 c_2Efcp_2EBIT1A_2E0)))) (_let_3 c_2Efcp_2EBIT1B_2E0)))) ((s _let_1) c_2Efcp_2EBIT1C_2E0)))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 (tyop_2Efcp_2Efinite__image A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2Efinite__index_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Efcp_2Efinite__index_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself (tyop_2Efcp_2Ebit1 A_27a))) c_2Ebool_2Ethe__value_2E0)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))))) _let_1)) _let_1))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Efcp_2Ecart A_27a) A_27b)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (= (_let_3 ((c_2Ecombin_2EFAIL_2E2 _let_4) _let_1)) (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Ecombin_2EFAIL_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V1v_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Efcp_2EFCP__EVERY_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_1)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (=> (and (forall ((V2a_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Efcp_2EBIT1B_2E1 ((s A_27a) V2a_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Efcp_2EBIT1C_2E0)))) (forall ((V1a_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Efcp_2EBIT1A_2E1 ((s A_27a) V1a_2E0))))))))) (forall ((V3b_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit1 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3b_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V0v_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s (_let_1 A_27c)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0)))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C _let_5) _let_7) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27c)) c_2Ebool_2Ethe__value_2E0)))) ((mono_2Ec_2Earithmetic_2E_2D _let_7) _let_5))) (= (_let_4 (c_2Efcp_2EFCP__TL_2E1 _let_2)) (_let_4 (c_2Efcp_2EL2V_2E1 (_let_3 (c_2Elist_2ETL_2E1 (_let_3 (c_2Efcp_2EV2L_2E1 _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2Emk__cart_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2Emk__cart_2E0)) _let_2)))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (c_2Efcp_2EV2L_2E1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) (c_2Efcp_2EL2V_2E1 _let_2)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (_let_1 A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Efcp_2EFCP__CONS_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) c_2Efcp_2EFCP__CONS_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (exists ((V1g_2E0 u)) (forall ((V2h_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (let ((_let_2 ((s _let_1) V2h_2E0))) (let ((_let_3 (s A_27c))) (let ((_let_4 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) A_27c)) V1g_2E0)) ((s _let_4) (c_2Efcp_2Emk__cart_2E1 _let_2)))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) V0f_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (=> (forall ((V1f_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Efcp_2Emk__cart_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a)) V1f_2E0)))))))) (forall ((V2a_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V2a_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Efcp_2EFCP__EVERY_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0P_2E0)) ((s ((tyop_2Efcp_2Ecart A_27b) A_27a)) V1v_2E0)))) (forall ((V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (or ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0))))) V2i) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27b) ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27b) A_27a)) V1v_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0x2_2E0 u) (V1x1_2E0 u) (V2w2_2E0 u) (V3w1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) c_2Eoption_2ENONE_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0x2_2E0))) (let ((_let_5 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V3w1_2E0))) (let ((_let_6 (c_2Ewellorder_2Eiseg_2E2 _let_5))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (s (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_7 _let_1)) ((c_2Ewellorder_2Ewo2wo_2E2 _let_5) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V2w2_2E0)))))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (s (_let_10 tyop_2Emin_2Ebool)))) (let ((_let_12 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_10 A_27b)) c_2Eoption_2ETHE_2E0)))) (let ((_let_13 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_14 (_let_3 V1x1_2E0))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (let ((_let_16 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_17 (s ((tyop_2Emin_2Efun _let_16) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2Ebool_2EIN_2E2 ((s _let_16) ((c_2Epair_2E_2C_2E2 _let_14) _let_4))) (_let_17 (c_2Eset__relation_2Estrict_2E1 (_let_17 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_5))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2Epred__set_2ESUBSET_2E2 (_let_13 (_let_12 (_let_11 ((c_2Epred__set_2EDELETE_2E2 (_let_11 (_let_9 (_let_8 (_let_6 _let_14))))) _let_2))))) (_let_13 (_let_12 (_let_11 ((c_2Epred__set_2EDELETE_2E2 (_let_11 (_let_9 (_let_8 (_let_6 _let_4))))) _let_2)))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (forall ((V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_3 ((c_2Efcp_2Efcp__index_2E2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V1f_2E0)) _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0x_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F0_2E0)) ((s _let_2) V0x_2E0)))) ((s _let_1) V1f_2E0))))))))) (forall ((V0x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) V0x_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_3))) (= (_let_5 (c_2Efcp_2EFCP_2E1 _let_2)) (_let_5 (c_2Emin_2E_40_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Efcp_2Ebit1 A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2EBIT1B_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Efcp_2EBIT1B_2E0)) _let_1))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EFCP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EFCP_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EV2L_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EV2L_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2Efcp__index_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2Efcp__index_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u) (V1p_2E0 u) (V2q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1p_2E0))) (let ((_let_3 (_let_1 V2q_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (let ((_let_5 (c_2Epred__set_2EUNION_2E2 _let_2))) (let ((_let_6 (_let_1 (_let_5 _let_3)))) (let ((_let_7 (_let_1 V0r_2E0))) (let ((_let_8 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_6) _let_7)))) (let ((_let_9 (_let_1 (_let_5 _let_2)))) (and (= _let_8 _let_8) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_9) _let_3)) _let_6) (= _let_9 _let_2) (= _let_8 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_7))) (= _let_6 _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1b_2E0 u) (V0a_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27c)) c_2Ebool_2Ethe__value_2E0)))))) (let ((_let_3 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0a_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_8 (_let_3 A_27c))) (let ((_let_9 ((s _let_8) V1b_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_5))) _let_7)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V2i) _let_2)))) (_let_6 ((c_2Efcp_2Efcp__index_2E2 _let_9) _let_7))) (_let_6 ((c_2Efcp_2Efcp__index_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2i) _let_2)))))))))))))))))))) (forall ((V0a_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V0a_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) V1b_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s (_let_1 ((tyop_2Esum_2Esum A_27b) A_27c))))) (= (_let_8 ((c_2Efcp_2EFCP__CONCAT_2E2 _let_3) _let_5)) (_let_8 (c_2Efcp_2EFCP_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_3)))))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (=> (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0n)) (exists ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_3 (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V2l_2E0))))) (let ((_let_4 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (and (= (_let_2 (c_2Ellist_2EtoList_2E1 _let_4)) _let_3) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_4)) _let_3))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u) (V1a mono_2Etyop_2Enum_2Enum) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_2 (_let_1 V0m_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Efcp_2E_3A_2B_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1a))))) (let ((_let_5 (_let_4 (_let_3 V3c_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 (_let_3 V2b_2E0)) _let_2)))) (_let_1 (_let_5 _let_2))))))))) (forall ((A_27a d) (V0bit0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Efcp_2Ebit0 A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0bit0_2E0)) (_let_2 c_2Efcp_2EBIT0A_2E0)))) (_let_2 c_2Efcp_2EBIT0B_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0FCP_20out_20of_20bounds Bool) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_7 ((s _let_6) (c_2Efcp_2EFCP_2E1 _let_5)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_6) _let_3)))) (let ((_let_10 (s A_27a))) (= (_let_10 ((c_2Efcp_2Efcp__index_2E2 _let_7) _let_2)) (_let_10 (((c_2Ebool_2ECOND_2E3 (_let_8 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0)))))))) (_let_10 ((app_2E2 _let_5) _let_2))) (_let_10 ((app_2E2 (_let_4 ((app_2E2 (_let_9 ((c_2Ecombin_2EFAIL_2E2 (_let_9 c_2Efcp_2Efcp__index_2E0)) (_let_8 (i_mono_2Etyop_2Emin_2Ebool V0FCP_20out_20of_20bounds))))) _let_7))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_27_2E0 u) (V1f1_27_2E0 u) (V2f_27_2E0 u) (V3M_2E0 u) (V4M_27_2E0 u) (V5f_2E0 u) (V6f1_2E0 u) (V7v_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0v_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s (tyop_2Efcp_2Ebit1 A_27a)))) (let ((_let_5 (_let_4 V4M_27_2E0))) (let ((_let_6 (_let_1 V7v_2E0))) (let ((_let_7 (_let_4 V3M_2E0))) (=> (and (= _let_7 _let_5) (forall ((V9a_2E0 u)) (let ((_let_1 ((s A_27a) V9a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Efcp_2Ebit1 A_27a)))) (=> (= (_let_4 V4M_27_2E0) (_let_4 (c_2Efcp_2EBIT1B_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V6f1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f1_27_2E0)) _let_1))))))))) (=> (= _let_5 (_let_4 c_2Efcp_2EBIT1C_2E0)) (= _let_6 _let_2)) (forall ((V8a_2E0 u)) (let ((_let_1 ((s A_27a) V8a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Efcp_2Ebit1 A_27a)))) (=> (= (_let_4 V4M_27_2E0) (_let_4 (c_2Efcp_2EBIT1A_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V5f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V2f_27_2E0)) _let_1)))))))))) (= (_let_1 ((((c_2Efcp_2Ebit1__CASE_2E4 _let_7) (_let_3 V5f_2E0)) (_let_3 V6f1_2E0)) _let_6)) (_let_1 ((((c_2Efcp_2Ebit1__CASE_2E4 _let_5) (_let_3 V2f_27_2E0)) (_let_3 V1f1_27_2E0)) _let_2)))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (= (_let_383 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Efcp_2Edimindex_2Emono_2Etyop_2Eone_2Eone)) (_let_383 c_2Efcp_2Edimindex_2E0)) (forall ((A_27a d) (V0a_27_2E0 u) (V1a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s (tyop_2Efcp_2Ebit0 A_27a)))) (not (= (_let_2 (c_2Efcp_2EBIT0A_2E1 (_let_1 V1a_2E0))) (_let_2 (c_2Efcp_2EBIT0B_2E1 (_let_1 V0a_27_2E0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Efcp_2Ebit0 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 (s A_27b))) (= (_let_10 (((c_2Efcp_2Ebit0__CASE_2E3 _let_6) _let_4) _let_3)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Efcp_2Ebit0__CASE_2E0)) _let_6))) _let_4))) _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Ebool_2Eitself tyop_2Eone_2Eone)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EL2V_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EL2V_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1v_2E0 u) (V2f1_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (= (= (_let_1 (((c_2Efcp_2Ebit0__CASE_2E3 ((s (tyop_2Efcp_2Ebit0 A_27a)) V0x_2E0)) (_let_2 V3f_2E0)) (_let_2 V2f1_2E0))) (_let_1 V1v_2E0)) (or (exists ((V5a_2E0 u)) (let ((_let_1 ((s A_27a) V5a_2E0))) (let ((_let_2 (s (tyop_2Efcp_2Ebit0 A_27a)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f1_2E0)) _let_1)) (_let_3 V1v_2E0)) (= (_let_2 V0x_2E0) (_let_2 (c_2Efcp_2EBIT0B_2E1 _let_1)))))))) (exists ((V4a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V4a_2E0))) (let ((_let_3 (s (tyop_2Efcp_2Ebit0 A_27a)))) (and (= (_let_3 V0x_2E0) (_let_3 (c_2Efcp_2EBIT0A_2E1 _let_2))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0)) _let_2)) (_let_1 V1v_2E0)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27c) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27c))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2Efcp__index_2E0)) _let_3))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Efcp_2Ecart A_27b) A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Efcp_2EFCP__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Efcp_2EFCP__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself (tyop_2Efcp_2Ebit0 A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1R_2E0)) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V1R_2E0)) (_let_1 V2Q_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 (_let_1 V0P_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Efcp_2EFCP__EVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2EFCP__EVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Efcp_2EHAS__SIZE_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EHAS__SIZE_2E0)) _let_2))) X1)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Efcp_2EFCP__TL_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2EFCP__TL_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Efcp_2EFCP__TL_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2EFCP__TL_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (= ((F0 V2a) V4b) (= V2a V4b))) (forall ((V0index_20out_20of_20range Bool) (V1m_2E0 u) (V2a mono_2Etyop_2Enum_2Enum) (V3w_2E0 u) (V4b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4b)))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1m_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V3w_2E0))) (let ((_let_8 (_let_4 (((c_2Efcp_2E_3A_2B_2E3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2a))) _let_7) _let_5)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_11 (s ((tyop_2Emin_2Efun _let_3) _let_10)))) (= (_let_6 ((c_2Efcp_2Efcp__index_2E2 _let_8) _let_2)) (_let_6 (((c_2Ebool_2ECOND_2E3 (_let_9 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V4b) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0)))))))) (_let_6 (((c_2Ebool_2ECOND_2E3 (_let_9 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2a) V4b)))) _let_7) (_let_6 ((c_2Efcp_2Efcp__index_2E2 _let_5) _let_2))))) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 (_let_11 ((c_2Ecombin_2EFAIL_2E2 (_let_11 c_2Efcp_2Efcp__index_2E0)) (_let_9 (i_mono_2Etyop_2Emin_2Ebool V0index_20out_20of_20range))))) _let_8))) _let_2))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V4x_2E0 u) (V5m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V2f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_8))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_4 _let_9)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) _let_6))) _let_2))) V5m) (and (= (_let_1 ((app_2E2 _let_6) (_let_3 (i_mono_2Etyop_2Enum_2Enum V5m)))) _let_2) ((mono_2Ec_2Eprim__rec_2E_3C V5m) V1n))))))))))))) (forall ((V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))) (exists ((V2f_2E0 u)) (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_5 tyop_2Emin_2Ebool)) V0s_2E0)))) (mono_2Ec_2Ebool_2E_3F_21_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))) ((s _let_3) V2f_2E0)))) _let_1))))))))))))) (forall ((V3m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3m) V1n) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3m))))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0))) (let ((_let_4 (c_2Ellist_2Eevery_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27a) V1h_2E0))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Ebool_2ET) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_6) _let_2))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V3a_2E0 u) (V4f_2E0 u) (V5f1_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V5f1_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 (((c_2Efcp_2Ebit0__CASE_2E3 ((s (tyop_2Efcp_2Ebit0 A_27a)) (c_2Efcp_2EBIT0B_2E1 _let_1))) (_let_2 V4f_2E0)) _let_3)) (_let_4 ((app_2E2 _let_3) _let_1)))))))) (forall ((V0a_2E0 u) (V1f_2E0 u) (V2f1_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 (((c_2Efcp_2Ebit0__CASE_2E3 ((s (tyop_2Efcp_2Ebit0 A_27a)) (c_2Efcp_2EBIT0A_2E1 _let_1))) _let_3) (_let_2 V2f1_2E0))) (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27b) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EFCP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EFCP_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Efcp_2Ebit0 A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2EBIT0B_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Efcp_2EBIT0B_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EFCP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EFCP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29)) (let ((_let_1 (tyop_2Ebool_2Eitself tyop_2Eone_2Eone))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0h_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (let ((_let_2 ((s _let_1) V0h_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) V1f_2E0))) (let ((_let_4 (s A_27c))) (= (_let_4 ((c_2Efcp_2Efcp__CASE_2E2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) (c_2Efcp_2Emk__cart_2E1 _let_2))) _let_3)) (_let_4 ((app_2E2 _let_3) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V7n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V1a0_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1a0_2E0)))) (forall ((V2_27bit0_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (or (exists ((V4a_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 V3a0_2E0) (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) V4a_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0))))))) (exists ((V6a_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 V3a0_2E0) (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)))) ((s A_27a) V6a_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27bit0_27_2E0)) ((s _let_1) V3a0_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27bit0_27_2E0)) ((s _let_1) V1a0_2E0)))))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit0 A_27a)) _let_1)) V0rep_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Estring_2Echar))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Efcp_2Edimindex_2Emono_2Etyop_2Eone_2Eone V0))) (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself tyop_2Eone_2Eone)) (i_mono_2Etyop_2Ebool_2Eitself_28tyop_2Eone_2Eone_29 V0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 F0_2E0)) _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 (_let_3 c_2Epred__set_2EUNIV_2E0)))) (= _let_2 (_let_1 c_2Ebool_2EARB_2E0))))))))) (exists ((V0rep_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27a)) A_27a)) V0rep_2E0))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit0 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Efcp_2EBIT0A_2E1 ((s A_27a) V1a_2E0)))))))) (forall ((V2a_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit0 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Efcp_2EBIT0B_2E1 ((s A_27a) V2a_2E0))))))))) (forall ((V3b_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit0 A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3b_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1v_27_2E0 u) (V2v_2E0 u) (V3f1_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1v_27_2E0))) (let ((_let_5 (_let_3 V2v_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (= (= (_let_3 ((((c_2Efcp_2Ebit1__CASE_2E4 _let_2) (_let_6 V4f_2E0)) (_let_6 V3f1_2E0)) _let_5)) _let_4) (or (and (= _let_5 _let_4) (= _let_2 (_let_1 c_2Efcp_2EBIT1C_2E0))) (exists ((V6a_2E0 u)) (let ((_let_1 ((s A_27a) V6a_2E0))) (let ((_let_2 (s (tyop_2Efcp_2Ebit1 A_27a)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f1_2E0)) _let_1)) (_let_3 V1v_27_2E0)) (= (_let_2 V0x_2E0) (_let_2 (c_2Efcp_2EBIT1B_2E1 _let_1)))))))) (exists ((V5a_2E0 u)) (let ((_let_1 ((s A_27a) V5a_2E0))) (let ((_let_2 (s (tyop_2Efcp_2Ebit1 A_27a)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V4f_2E0)) _let_1)) (_let_3 V1v_27_2E0)) (= (_let_2 V0x_2E0) (_let_2 (c_2Efcp_2EBIT1A_2E1 _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EdirGraph_2EEXCLUDE_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EdirGraph_2EREACH_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EdirGraph_2EREACH_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_10 (s _let_5))) (= (_let_10 (((c_2EdirGraph_2EEXCLUDE_2E3 _let_8) _let_4) _let_1)) (_let_10 ((app_2E2 (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EdirGraph_2EEXCLUDE_2E0)) _let_8))) _let_4))) _let_1)))))))))))))) (forall ((A_27a d) (V0G_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EdirGraph_2EREACH_2E3 ((s ((tyop_2Emin_2Efun A_27a) (tyop_2Elist_2Elist A_27a))) V0G_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))) (forall ((V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 V3z_2E0))) (let ((_let_6 (s (_let_3 (tyop_2Elist_2Elist A_27a))))) (let ((_let_7 (_let_6 V0G_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EdirGraph_2EREACH_2E3 _let_7) _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EdirGraph_2EREACH_2E3 (_let_6 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_7) (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_5) (_let_4 c_2Epred__set_2EEMPTY_2E0)))))) (_let_1 V1x_2E0)) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0G_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_4 (_let_2 V2l_2E0))) (let ((_let_5 (s (_let_1 (tyop_2Elist_2Elist A_27b))))) (let ((_let_6 (c_2EdirGraph_2EEXCLUDE_2E2 (_let_5 V0G_2E0)))) (= (_let_5 (_let_6 (_let_2 (_let_3 _let_4)))) (_let_5 ((c_2EdirGraph_2EEXCLUDE_2E2 (_let_5 (_let_6 _let_4))) (_let_2 (_let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0G_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V0G_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F1_2E0)) _let_6))) _let_3))) (not (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Elist_2ENIL_2E0)))))))))))) (=> (forall ((V0G_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 ((s _let_3) V0G_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4))) _let_1))))))))))))))) (forall ((V0G_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 ((s _let_2) V0G_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_5 (c_2EdirGraph_2EParents_2E1 _let_3)) (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EdirGraph_2EREACH__LIST_2E3 _let_6) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EdirGraph_2EREACH__LIST_2E0)) _let_6))) _let_3))) _let_1)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0G_2E0 u) (V1ex_2E0 u) (V2node_2E0 u)) (let ((_let_1 ((s A_27b) V2node_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 _let_2)) V0G_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 ((s (_let_3 tyop_2Emin_2Ebool)) V1ex_2E0))) (= (_let_5 (((c_2EdirGraph_2EEXCLUDE_2E3 _let_4) _let_6) _let_1)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (_let_5 c_2Elist_2ENIL_2E0)) (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EdirGraph_2EREACH_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EdirGraph_2EREACH_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EdirGraph_2EParents_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EdirGraph_2EParents_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27d)) V6f_2E0))) (let ((_let_4 (s A_27d))) (= (_let_4 ((app_2E2 _let_3) _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s A_27b) ((((c_2Equotient_2E_2D_2D_3E_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) _let_3) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2rep1_2E0)) _let_1)))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0b_2E0 u) (V1c_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1c_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V0b_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (((c_2Ebag_2EBAG__UNION_2E3 _let_5) _let_3) _let_1))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1s1_2E0 u) (V2s2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0)))) (exists ((V4y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V4y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V3x_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) (_let_2 V2s2_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2Edominates_2E3 ((s (_let_2 _let_1)) V0R_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V1s1_2E0)) ((s _let_1) V2s2_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0LFINITE_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (and (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0))))) (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V3a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) _let_2))))))))))) (= (_let_381 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebag_2EITBAG_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_381 c_2Ebag_2EITBAG_2E0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0b_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s (_let_1 tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EBAG__EVERY_2E2 _let_4) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Ebag_2ESET__OF__BAG_2E1 _let_6))) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_4)))))))))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (_let_1 V0b_2E0))) (= (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_4)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_4))) (= _let_3 _let_2))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b1_2E0))) (let ((_let_3 ((s A_27a) V0e_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__IN_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V2b2_2E0))) (=> (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) (_let_1 V3b_2E0))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_6))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2Emlt1_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0r_2E0)) (_let_2 V1b_2E0)) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (=> (forall ((V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebag_2EBAG__IN_2Emono_2Etyop_2Enum_2Enum V1x) V0b) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1x))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 c_2Ebag_2EEMPTY__BAG_2E0))) (let ((_let_6 (_let_4 V2b_2E0))) (= (= (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) _let_5)) (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) _let_6))) (and (= _let_6 _let_5) (= _let_3 _let_2)))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) _let_3))) (= _let_3 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__IN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebag_2EBAG__IN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1b2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_4))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b2_2E0 u) (V2b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V2b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (c_2Ebag_2EPSUB__BAG_2E2 (_let_1 V0b1_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1b2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (V0e_2E0 u) (V1c_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1c_2E0))) (let ((_let_3 (_let_1 V2b_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27a) V0e_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_3))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 ((s (_let_1 tyop_2Enum_2Enum)) (c_2Ebag_2EBAG__OF__SET_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_6))) (= (_let_1 (((c_2Ebag_2EITBAG_2E3 _let_8) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Ebag_2EITBAG_2E0)) _let_8))) _let_5))) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0b0_2E0 u) (V1b_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b0_2E0))) (let ((_let_3 ((s A_27a) V2e_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 _let_2) _let_3) (_let_1 V1b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (forall ((V1e mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) V1e) _let_1) (= V1e _let_1)))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__MERGE_2E2 _let_2) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4g_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_6 (c_2Ebool_2ERES__EXISTS_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_5))))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V3f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_9 (_let_9 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Emin_2Ebool))) _let_8) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4)))))))))))))))))) (= (_let_380 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ebag_2Emlt1_2Emono_2Etyop_2Enum_2Enum)) (_let_380 c_2Ebag_2Emlt1_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Ebag_2EBIG__BAG__UNION_2E0)) _let_3)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0eltsize_2E0 u) (V2e_2E0 u) (V3acc mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) V0eltsize_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_6 (_let_2 _let_5))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1))) V3acc) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_4) _let_1))))) V3acc))))))))) (forall ((V0eltsize_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1b_2E0))) (let ((_let_6 (_let_4 V0eltsize_2E0))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Ebag_2Ebag__size_2E2 _let_6) _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (((c_2Ebag_2EITBAG_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_6))) _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V2b2_2E0))) (let ((_let_4 (_let_2 V1b1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (exists ((V3e_2E0 u) (V4rep_2E0 u) (V5res_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V5res_2E0))) (and (forall ((V6e_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6e_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__IN_2E2 _let_2) ((s (_let_3 tyop_2Enum_2Enum)) V4rep_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0r_2E0)) _let_2))) (_let_1 V3e_2E0))))))))))) (= (_let_1 V2b2_2E0) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V3e_2E0)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))))) (= (_let_1 V1b1_2E0) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V4rep_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Ebag_2Emlt1_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0r_2E0)) _let_4) _let_3)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V1e_2E0)) (_let_1 V0b_2E0)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (=> (not (= _let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) (c_2Ebag_2EBAG__CHOICE_2E1 _let_2))) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2e_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (= (= (_let_1 ((app_2E2 _let_5) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_2))))))))))) (forall ((V0f_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__EVERY_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Ebag_2EFINITE__BAG_2E1 _let_3)))) (= (_let_2 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) _let_3)) _let_3)))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (not (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0Y_2E0 u) (V1X_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s (_let_1 _let_2)) V2R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 V0Y_2E0))) (let ((_let_7 (_let_5 V1X_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_7) _let_6))) (not (= _let_7 (_let_5 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2Edominates_2E3 _let_3) _let_6) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3)))) (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s (_let_1 _let_2)) V2R_2E0)) _let_4))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) (_let_3 V1X_2E0)))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0e_2E0 u) (V1c_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1c_2E0))) (let ((_let_3 (_let_1 V2b_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) _let_3))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_2 ((s A_27a) V0e_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Ebag_2EBAG__INN_2E3 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_1)))))))) (forall ((V0bag (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__SUM V0bag) V1n) (((mono_2Ec_2Ebag_2EITBAG_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2E_2B) V0bag) V1n))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2ESING__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2ESING__BAG_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 ((s (_let_1 (_let_1 tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0b1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_3))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0b0_2E0 u) (V1b_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b0_2E0)) ((s A_27a) V2e_2E0)) (_let_1 V1b_2E0)))) (forall ((V3e_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V3e_27_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b0_2E0)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__SUM mono_2Ec_2Ebag_2EEMPTY__BAG_2Emono_2Etyop_2Enum_2Enum) V0n) V0n)) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (forall ((V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V2e_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b1_2E0))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b2_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__DISJOINT_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 (c_2Ebag_2EBAG__REST_2E1 _let_2)) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 (c_2Ebag_2EEL__BAG_2E1 ((s A_27a) (c_2Ebag_2EBAG__CHOICE_2E1 _let_2)))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Ebag_2ESET__OF__BAG_2E1 ((s (_let_1 tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0))) (_let_2 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__CARD__RELn_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ebag_2EBAG__CARD__RELn_2E0)) _let_2))) X1)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u)) (=> (forall ((V2b_2E0 u) (V3acc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3acc_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2b_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) V1P_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 A_27b))) (=> (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Ebag_2EFINITE__BAG_2E1 _let_6))) (not (= _let_6 (_let_5 c_2Ebag_2EEMPTY__BAG_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 (_let_5 (c_2Ebag_2EBAG__REST_2E1 _let_6))))) (_let_1 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_3 _let_12)) V0f_2E0)) ((s A_27a) (c_2Ebag_2EBAG__CHOICE_2E1 _let_6))))) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_6))) _let_2))))))))))))))))) (forall ((V4v_2E0 u) (V5v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V1P_2E0)) ((s _let_1) V4v_2E0)))) ((s A_27b) V5v1_2E0))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ebag_2ESET__OF__BAG_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (_let_1 V0c_2E0))) (= (= _let_3 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (= _let_2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2EFINITE__BAG_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2e_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_2 ((s A_27a) V2e_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Ebag_2EBAG__INN_2E3 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_1))) (or (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 _let_2) _let_1))) (= V1n (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= V1n mono_2Ec_2Enum_2E0)))))))) (forall ((A_27a d) (V0B1_2E0 u) (V1B2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0B1_2E0))) (let ((_let_3 (_let_1 V1B2_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__DISJOINT_2E2 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_3))) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0b0_2E0 u) (V1e_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b0_2E0))) (let ((_let_3 (_let_1 V2b_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 _let_2) ((s A_27a) V1e_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebag_2EBAG__UNION_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2ESUB__BAG_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EEMPTY__BAG_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Enum_2E0)) (and (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1cs mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c))) (= (mono_2Ec_2Estring_2EIMPLODE (_let_1 V1cs)) (_let_1 (mono_2Ec_2Estring_2EIMPLODE V1cs))))) _let_49) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebag_2EBAG__FILTER_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebag_2EBAG__FILTER_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Ebag_2EBAG__OF__SET_2E2 _let_1) _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) _let_1)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V2b_2E0))) (let ((_let_3 ((s (_let_1 A_27a)) V1g_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (= (_let_6 ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_1 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_3))) _let_2)) (_let_6 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) ((s (_let_4 tyop_2Enum_2Enum)) ((c_2Ebag_2EBAG__IMAGE_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (= (_let_2 (c_2Ebag_2EBAG__OF__SET_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((A_27a d) (V0b1_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b1_2E0)))) (forall ((V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2ESUB__BAG_2E2 _let_2) (_let_1 V0b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1e_2E0 u) (V2b1_2E0 u) (V3b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V1e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V2b1_2E0)) (_let_1 V3b2_2E0)))))) (exists ((V4m1 mono_2Etyop_2Enum_2Enum) (V5m2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V1e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V4m1))) (_let_1 V2b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V5m2))) (_let_1 V3b2_2E0)))) (= V0n ((mono_2Ec_2Earithmetic_2E_2B V4m1) V5m2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Ebag_2EBIG__BAG__UNION_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Ebag_2EBIG__BAG__UNION_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (= (_let_4 (c_2Ebag_2EEL__BAG_2E1 _let_3)) (_let_4 (c_2Ebag_2EEL__BAG_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((F0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (F3 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (F2 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (F1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (=> (forall ((V0R (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (F0 V0R) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0R))) (=> (forall ((V5v2 mono_2Etyop_2Estring_2Echar) (V6v3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((F3 V5v2) V6v3) mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Estring_2Echar)) (=> (forall ((V3c mono_2Etyop_2Estring_2Echar) (V4v1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((F2 V3c) V4v1) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar V4v1) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar V3c)) F3))) (=> (forall ((V1TOCHAR (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V2a mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((F1 V1TOCHAR) V2a) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar V2a) mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Estring_2Echar) F2))) (= mono_2Ec_2Estring_2ETOCHAR ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 F0)) F1))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (V0b1_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b1_2E0)))) (forall ((V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V0b1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V2e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1b2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_5))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__INTER_2E2 _let_3) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d)) (and (forall ((V0b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V1e_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V0b1_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (c_2Ebag_2EBAG__REST_2E1 _let_2))) _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_3 (_let_1 (_let_2 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V3sb_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V3sb_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) F0_2E0)) _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (=> (forall ((V0f_2E0 u) (V2x_2E0 u) (V4e0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 ((s A_27b) V4e0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F1_2E0)) _let_6))) _let_2))) _let_3))) (= (_let_1 ((app_2E2 _let_6) _let_3)) _let_2))))))))))) (forall ((V0f_2E0 u) (V1b_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_8))) (let ((_let_10 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_10 (((c_2Ebag_2EBAG__IMAGE_2E3 _let_7) _let_4) _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_10 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) F0_2E0)) (_let_3 ((c_2Ebag_2EBAG__FILTER_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F1_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0)))) (forall ((V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 V0b1_2E0)) (_let_1 V2b3_2E0)))) (_let_1 V1b2_2E0))))))))) (forall ((V3b1_2E0 u) (V4b2_2E0 u) (V5b3_2E0 u) (V6b4_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V5b3_2E0))) (let ((_let_3 (_let_1 V4b2_2E0))) (let ((_let_4 (_let_1 V6b4_2E0))) (let ((_let_5 (_let_1 V3b1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_5) _let_3))) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2ESING__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (exists ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 V0b_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V1x_2E0)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2i_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2i_2E0))) (let ((_let_5 (_let_3 V0y_2E0))) (let ((_let_6 (_let_3 V1x_2E0))) (let ((_let_7 ((s (_let_1 _let_2)) V3R_2E0))) (let ((_let_8 (c_2Ebag_2Edominates_2E3 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (c_2Epred__set_2ESUBSET_2E2 _let_4))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2EWF_2E1 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2Etransitive_2E1 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_3 ((c_2Epred__set_2EDIFF_2E2 _let_6) _let_4))) (_let_3 ((c_2Epred__set_2EDIFF_2E2 _let_5) _let_4))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Ebag_2EEMPTY__BAG_2E0)))) (forall ((V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1b_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V2e_2E0)) (_let_2 V1b_2E0))))))))))))) (forall ((V3b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V3b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2)))) (forall ((V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V1b1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) _let_6) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_6))) (exists ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V3x_2E0))) (let ((_let_4 (_let_2 V2b2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V4y_2E0))) (let ((_let_7 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Ebag_2Edominates_2E3 ((s (_let_1 _let_7)) V0R_2E0)) (_let_8 (c_2Ebag_2ESET__OF__BAG_2E1 _let_6))) (_let_8 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))) (= (_let_2 V1b1_2E0) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_4))) (not (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_4)))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b1_2E0))) (let ((_let_3 (_let_1 V2b2_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__INSERT_2E2 _let_4))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 _let_4) _let_2)))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_5 _let_3))) _let_2)) (_let_1 (_let_5 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) _let_2)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (c_2Ebag_2EEL__BAG_2E1 _let_3))) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0b0_2E0 u) (V1b_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3e2_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__IN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V2e1_2E0))) (let ((_let_8 (_let_1 V0b0_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_8))) (not (= _let_7 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Ebag_2EBAG__DELETE_2E3 _let_8) _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V0b1_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (((c_2Ebag_2EBAG__DIFF_2E3 _let_5) _let_3) _let_1))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Ebag_2EBAG__CARD_2E0)) _let_2)))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (let ((_let_4 (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))) (let ((_let_5 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_7 (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3)))) (and (= _let_4 (= _let_6 _let_7)) (= (= _let_7 _let_6) _let_4)))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1b2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27d d)) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Einftree_2Eis__tree_2E0)) ((s ((tyop_2Emin_2Efun (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d)) _let_1)) V0rep_2E0))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum V1x) V0b)) V2a) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) ((mono_2Ec_2Earithmetic_2E_2A V1x) V2a)))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b_2E0))) (let ((_let_5 (_let_3 V2a_2E0))) (let ((_let_6 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_6))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2Etransitive_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2EWF_2E1 _let_6)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_3 (_let_10 _let_5))) (_let_3 (_let_10 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_5) _let_4)))))))))))))))) (forall ((F2 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F1 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V3h Bool) (V6n mono_2Etyop_2Enum_2Enum) (V7t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F2 V3h) V6n) V7t_27) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V6n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V3h) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))) V7t_27)))) (=> (forall ((V3h Bool) (V5v mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F1 V3h) V5v) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5v) (F2 V3h)))) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V3h Bool) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F0 V1m) V3h) V4t) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edec__bnum V1m) V4t)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F1 V3h)))) (and (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edec__bnum mono_2Ec_2Enum_2E0) V0l) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Enum_2E0) V0l)))) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edec__bnum (mono_2Ec_2Enum_2ESUC V1m)) V2l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F0 V1m))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Ebag_2EBAG__DELETE_2E3 _let_2) ((s A_27a) V1e_2E0)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2ESING__BAG_2E1 _let_2)))))))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (_let_1 V0c_2E0))) (and (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_3))) _let_3)) _let_2) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))) _let_3)) _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__UNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_3 ((s (_let_1 A_27a)) V0f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 ((s (_let_4 tyop_2Enum_2Enum)) ((c_2Ebag_2EBAG__IMAGE_2E2 _let_3) _let_2)))) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_3) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ebag_2ESET__OF__BAG_2E1 _let_2))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (_let_2 V2a_2E0))) (let ((_let_5 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0))) (let ((_let_6 (c_2Ebag_2Emlt1_2E3 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2EWF_2E1 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_2 (_let_8 _let_4))) (_let_2 (_let_8 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (V0e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0e_2E0))) (= (_let_2 (c_2Ebag_2ESET__OF__BAG_2E1 ((s (_let_1 tyop_2Enum_2Enum)) (c_2Ebag_2EEL__BAG_2E1 _let_3)))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0b1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b1) (forall ((V1b2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V1b2) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD ((mono_2Ec_2Ebag_2EBAG__UNION_2Emono_2Etyop_2Enum_2Enum V0b1) V1b2)) ((mono_2Ec_2Earithmetic_2E_2A V2a) V3b)) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b1) V2a)) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V1b2) V3b))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Ebag_2EBAG__OF__SET_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebag_2EBAG__OF__SET_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0c_2E0))) (let ((_let_5 (_let_3 V1b_2E0))) (let ((_let_6 (_let_3 V2a_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebag_2EFINITE__BAG_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_4))) (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4)))))))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b2_2E0 u) (V2b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b1_2E0))) (let ((_let_3 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V1b2_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0b1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2)))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s A_27b) V0e_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_4) _let_2))))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (V0b0_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u) (V3e1_2E0 u) (V4e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b0_2E0)) (_let_2 V3e1_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 _let_3) (_let_2 V4e2_2E0)) (_let_1 V2b2_2E0))))) (exists ((V5b_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 V5b_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b0_2E0)) (_let_2 V4e2_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 _let_3) (_let_2 V3e1_2E0)) (_let_1 V2b2_2E0)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) _let_3) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_2))) _let_3))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2EtoList_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2EtoList_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (= (_let_1 (c_2Ebag_2EBAG__REST_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (_let_4 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1) V2))) (_let_4 (((c_2Erelation_2ETC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Ebag_2EBAG__CHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Ebag_2EBAG__CHOICE_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1x mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (=> (and (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) ((mono_2Ec_2Ebag_2EBAG__IN_2Emono_2Etyop_2Enum_2Enum V1x) V0b)) ((mono_2Ec_2Edivides_2Edivides V1x) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) V2a)))) (forall ((A_27a d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0)))) (not (exists ((V1s_2E0 u)) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1s_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0_3C_3C_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))))))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))))))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (= (_let_2 ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0)) _let_3)) _let_3)))))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0c_2E0))) (let ((_let_5 (_let_3 V1b_2E0))) (let ((_let_6 (_let_3 V2a_2E0))) (let ((_let_7 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (c_2Erelation_2ETC_2E3 ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_7))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2EWF_2E1 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Etransitive_2E1 _let_7)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Ebag_2EFINITE__BAG_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_4))) (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4)))))))))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1R_2E0)))) (_let_3 V0b_2E0)) (_let_3 c_2Ebag_2EEMPTY__BAG_2E0)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (or (= (_let_1 V0b_2E0) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (exists ((V1b0_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 V0b_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V2e_2E0)) (_let_1 V1b0_2E0))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (let ((_let_3 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)) _let_2)))) (let ((_let_4 (_let_1 V1b_2E0))) (= (or (= _let_4 _let_3) (= _let_4 _let_2)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_3))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0b1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EPSUB__BAG_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EisPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1b2_2E0 u) (V2b1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b2_2E0))) (let ((_let_5 (_let_3 V2b1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_5))) (not (= _let_5 (_let_3 c_2Ebag_2EEMPTY__BAG_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) _let_4) (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4)))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V0b_2E0)))) (let ((_let_4 (_let_1 V1b1_2E0))) (= (= _let_4 _let_2) (= (_let_1 (_let_3 _let_4)) (_let_1 (_let_3 _let_2))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__UNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d)) (and (forall ((V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))))) (forall ((A_27a d) (V0sob_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (forall ((V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1b_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0)))) (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))))) (= (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_3)) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))))))) (forall ((A_27a d)) (and (forall ((V5f1_2E0 u) (V6a_2E0 u) (V7a0_2E0 u) (V8f_2E0 u) (V9f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V9f0_2E0))) (let ((_let_5 (_let_3 V8f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V7a0_2E0))) (let ((_let_8 ((s _let_2) V5f1_2E0))) (let ((_let_9 (c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 V6a_2E0)))) (let ((_let_10 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_10 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_8) (_let_10 (((_let_9 _let_7) _let_5) _let_4)))) (_let_10 (((_let_9 (_let_6 ((app_2E2 _let_8) _let_7))) _let_5) _let_4)))))))))))))) (forall ((V15f1_2E0 u) (V16a_2E0 u) (V17a0_2E0 u) (V18f_2E0 u) (V19f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V19f0_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V15f1_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 V16a_2E0)) (_let_6 V17a0_2E0)) (_let_3 V18f_2E0)))) (let ((_let_8 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_8 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_5) (_let_8 (_let_7 _let_4)))) (_let_8 (_let_7 (_let_3 ((app_2E2 _let_5) _let_4)))))))))))))) (forall ((V10f1_2E0 u) (V11a_2E0 u) (V12a0_2E0 u) (V13f_2E0 u) (V14f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V14f0_2E0))) (let ((_let_5 (_let_3 V13f_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V10f1_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 ((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_7 V11a_2E0)) (_let_7 V12a0_2E0)))) (let ((_let_9 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_9 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_6) (_let_9 ((_let_8 _let_5) _let_4)))) (_let_9 ((_let_8 (_let_3 ((app_2E2 _let_6) _let_5))) _let_4))))))))))))) (forall ((V0f1_2E0 u) (V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V4f0_2E0))) (let ((_let_5 (_let_3 V3f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V2a0_2E0))) (let ((_let_8 (_let_6 V1a_2E0))) (let ((_let_9 ((s _let_2) V0f1_2E0))) (let ((_let_10 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_10 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_9) (_let_10 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_8) _let_7) _let_5) _let_4)))) (_let_10 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 ((app_2E2 _let_9) _let_8))) _let_7) _let_5) _let_4)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebag_2EITBAG_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebag_2EITBAG_2E3 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))) (= (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) _let_3)) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (((c_2Ebag_2EBAG__IMAGE_2E3 _let_6) _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_6))) _let_4))) _let_1)))))))))))))) (forall ((V0bag (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0bag) V1n) (((mono_2Ec_2Ebag_2EITBAG_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2E_2A) V0bag) V1n))) (forall ((A_27a d) (A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b2_2E0))) (let ((_let_5 (_let_3 V1b1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (exists ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V3x_2E0))) (let ((_let_4 (_let_2 V2b2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V4y_2E0))) (let ((_let_7 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Ebag_2Edominates_2E3 ((s (_let_1 _let_7)) V0R_2E0)) (_let_8 (c_2Ebag_2ESET__OF__BAG_2E1 _let_6))) (_let_8 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))) (= (_let_2 V1b1_2E0) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_4))) (not (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) _let_5) _let_4))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2EDecode_2Edec2enc_2E2 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0b0_2E0 u) (V1e1_2E0 u) (V2e2_2E0 u) (V3b1_2E0 u) (V4b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V4b2_2E0))) (let ((_let_3 (_let_1 V3b1_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2e2_2E0))) (let ((_let_6 (_let_4 V1e1_2E0))) (let ((_let_7 (c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b0_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_6) _let_3)))) (= (= _let_6 _let_5) (= _let_3 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__INTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__INTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((A_27a d) (V0b1_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b1_2E0)))) (forall ((V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0)))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u) (V2b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V2b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (= (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 _let_2) ((s (_let_3 tyop_2Enum_2Enum)) V2b_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V1f_2E0)) _let_2)) (_let_1 V0x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 ((s A_27b) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_1 A_27b)) V1f_2E0)) _let_2))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V1e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (exists ((V2b_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b_2E0)) ((s A_27a) V1e_2E0)) (_let_1 V2b_27_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Ebag_2EBAG__INSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1b_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2e1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__INN_2E3 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V3e2_2E0))) (let ((_let_9 (_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_8) _let_2))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 _let_2))) (and (= _let_5 _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) (_let_1 V1b1_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Ebag_2EEMPTY__BAG_2Emono_2Etyop_2Enum_2Enum))) (= (and (not (= V0b _let_1)) (not (= V0b mono_2Ec_2Ebag_2EEMPTY__BAG_2Emono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b)) (((mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Ebag_2Emlt1_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2E_3C)) _let_1) V0b)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b_2E0))) (let ((_let_5 (_let_3 V0c_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 _let_5))) (let ((_let_7 (_let_3 V2a_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (c_2Erelation_2ETC_2E3 ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0)))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Ebag_2EFINITE__BAG_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 _let_7) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_3 (_let_6 _let_7))) (_let_3 (_let_6 _let_4))))))))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1b_2E0)))) (exists ((V2b_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 V1b_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)) (_let_1 V2b_27_2E0)))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V1e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))))) (let ((_let_6 (_let_1 V0b1_2E0))) (let ((_let_7 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_6)))) (let ((_let_8 (c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_6))))) (let ((_let_9 (c_2Ebag_2EBAG__UNION_2E2 _let_6))) (let ((_let_10 (_let_1 (_let_9 _let_2)))) (let ((_let_11 (c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_9 _let_3))))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_11 _let_10))) _let_5) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_11 _let_7))) _let_5) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_8 _let_10))) _let_5) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_8 _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_1 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_9 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (((c_2Ebag_2EBAG__INSERT_2E3 _let_7) _let_6) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) c_2Ebag_2EBAG__INSERT_2E0)) _let_7))) _let_6))) _let_2)))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__IN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebag_2EBAG__IN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (X0 (-> mono_2Etyop_2Enum_2Enum Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardgeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardgeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2))) (not (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d)) (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V3y_2E0)) _let_2)))))))) (forall ((V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) (_let_1 V1y_2E0))))))))))) (forall ((F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V10v mono_2Etyop_2Enum_2Enum) (V11t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A _let_1) V10v)) _let_1))) (= (((F5 V0p) V10v) V11t_27) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p _let_2)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2) V11t_27))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V9v1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F2 V0p) V9v1) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V9v1) (F5 V0p)))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V7v mono_2Etyop_2Enum_2Enum) (V8t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V7v)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (((F4 V0p) V7v) V8t_27) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p _let_1)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_1) V8t_27))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V6v1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= ((F3 V0p) V6v1) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V6v1) (F4 V0p)))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V4v8 Bool) (V5t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F1 V0p) V4v8) V5t) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V4v8) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p mono_2Ec_2Enum_2E0)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Enum_2E0) V5t))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edecode__num (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2ET)) V5t)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F3 V0p))))) (=> (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V2v4 Bool) (V3t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((F0 V0p) V2v4) V3t_27) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2v4) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V3t_27) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F1 V0p))) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2EDecode_2Edecode__num (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Ebool_2ET)) V3t_27)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F2 V0p))))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edecode__num V0p) V1l) (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1l) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29) (F0 V0p))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V1Q_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V2P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0b_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1Q_2E0))) (let ((_let_7 (_let_5 V2P_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 _let_4))) (= (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 _let_7) (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 _let_6) _let_3)))) (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) F0_2E0)) _let_7))) _let_6))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2EreaderMonad_2EBIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2EreaderMonad_2EBIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2e_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V2e_2E0)) (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_1))) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Ebag_2EBAG__CARD_2E1 _let_1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Ebag_2EITBAG_2E3 _let_6) _let_3) (_let_8 (i_mono_2Etyop_2Enum_2Enum X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_4) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebag_2EITBAG_2E0)) _let_6))) _let_3))) X2))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0M_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0M_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) A_27b)))) (and (= (_let_1 ((c_2EreaderMonad_2EFMAP_2E2 (_let_3 F0_2E0)) _let_2)) _let_2) (= (_let_1 ((c_2EreaderMonad_2EFMAP_2E2 (_let_3 c_2Ecombin_2EI_2E0)) _let_2)) _let_2)))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_1) _let_1))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EPSUB__BAG_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EPSUB__BAG_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESET__OF__BAG_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebag_2ESET__OF__BAG_2E0)) _let_4))) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0b_2E0))) (= (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0b_2E0 u) (V1f_2E0 u) (V2acc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2acc_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0b_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((s (_let_3 _let_7)) V1f_2E0))) (let ((_let_9 (c_2Ebag_2EITBAG_2E3 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Ebag_2EFINITE__BAG_2E1 _let_6))) (= (_let_1 ((_let_9 _let_6) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_10 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)) _let_6))) _let_2) (_let_1 ((_let_9 (_let_5 (c_2Ebag_2EBAG__REST_2E1 _let_6))) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) ((s A_27a) (c_2Ebag_2EBAG__CHOICE_2E1 _let_6))))) _let_2))))))))))))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (= (forall ((V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))) (forall ((V2b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)) ((s _let_1) V2b_2E0)))) (forall ((V3e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V3e_2E0)) (_let_2 V2b_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V0b_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s (_let_3 A_27a)))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_6 ((c_2Ellist_2ELGENLIST_2E2 _let_5) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum _let_1))))) (_let_6 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) ((app_2E2 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_6 ((c_2Ellist_2ELGENLIST_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 _let_5) ((s (_let_3 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_5 ((c_2Ellist_2ELGENLIST_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V2n))))))) (_let_5 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) ((app_2E2 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_5 ((c_2Ellist_2ELGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n)))))))))))))))) (= (_let_1 ((c_2Ellist_2ELGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_1 c_2Ellist_2ELNIL_2E0))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0sob_2E0 u) (V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0sob_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_5))) (= (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_5)))) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_3)))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1a_2E0 u) (V2N_2E0 u) (V3M0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2Emlt1_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0r_2E0)) (_let_2 V2N_2E0)) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 (_let_2 V3M0_2E0)) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V1a_2E0)) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))))))) (or (exists ((V5KK_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (and (forall ((V6b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__IN_2E2 _let_2) ((s (_let_3 tyop_2Enum_2Enum)) V5KK_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V0r_2E0)) _let_2))) (_let_1 V1a_2E0))))))))))) (= (_let_1 V2N_2E0) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V3M0_2E0)) (_let_1 V5KK_2E0))))))) (exists ((V4M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V4M_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2Emlt1_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0r_2E0)) _let_3) (_let_2 V3M0_2E0)))) (= (_let_2 V2N_2E0) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V1a_2E0)) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))))))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (exists ((V2b0_2E0 u) (V3e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b0_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 _let_2))) V1n) (= (_let_1 V0b_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V3e_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (mono_2Ec_2Enum_2ESUC V1n)))))) (forall ((A_27a d) (V0sob_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (forall ((V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V1b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 ((s _let_1) (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__DIFF_2E2 _let_3))) (let ((_let_5 ((s A_27a) V0x_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 _let_5) _let_3)))) (= (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ebag_2ESET__OF__BAG_2E0)) _let_3))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__SUM ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum V1x) V0b)) V2a) ((mono_2Ec_2Ebag_2EBAG__GEN__SUM V0b) ((mono_2Ec_2Earithmetic_2E_2B V1x) V2a)))))) (forall ((A_27a d)) (and (forall ((V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (_let_1 V0b_2E0)))))) (forall ((V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2e_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0b0_2E0 u) (V1b_2E0 u) (V2e_2E0 u)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 _let_3) _let_1) (_let_2 V1b_2E0)))) (and ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_3) _let_1)))) mono_2Ec_2Enum_2E0) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (app_2E2 (_let_4 V0b0_2E0)))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_1 V2e_2E0))) (let ((_let_8 (_let_3 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 (_let_4 V1b_2E0)) _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_2))) _let_7)))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_7)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Erelation_2ETC_2E3 _let_9) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_7)) c_2Erelation_2ETC_2E0)) _let_9))) _let_4))) _let_3))))))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e1_2E0 u) (V2e2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2e2_2E0))) (let ((_let_3 (_let_1 V1e1_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 V0b_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__IN_2E2 _let_3))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) _let_5))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_5))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 ((s (_let_1 tyop_2Emin_2Ebool)) V2P_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__FILTER_2E2 _let_4))) (let ((_let_6 (_let_2 (_let_5 _let_3)))) (let ((_let_7 ((s A_27a) V0e_2E0))) (let ((_let_8 (c_2Ebag_2EBAG__INSERT_2E2 _let_7))) (= (_let_2 (_let_5 (_let_2 (_let_8 _let_3)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_7))) (_let_2 (_let_8 _let_6))) _let_6)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Ebag_2Emlt1_2Emono_2Etyop_2Enum_2Enum V0))) (_let_3 (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s A_27a) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (= (_let_2 (((c_2Efcp_2E_3A_2B_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) c_2Efcp_2E_3A_2B_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0X_2E0 u) (V1Y_2E0 u) (V2Z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2Z_2E0))) (let ((_let_3 (_let_1 V1Y_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__DIFF_2E2 (_let_1 V0X_2E0)))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0e_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_5 _let_3))) (_let_1 (_let_5 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (V0X_2E0 u) (V1Y_2E0 u) (V2Z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2Z_2E0))) (let ((_let_3 (_let_1 V1Y_2E0))) (let ((_let_4 (_let_1 V0X_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__UNION_2E2 _let_4))) (let ((_let_6 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_5 _let_3))) _let_2)))) (let ((_let_7 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) _let_3))) (and (= (_let_1 (_let_5 _let_7)) _let_6) (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_7) _let_4)) _let_6))))))))))) (= (_let_379 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_379 c_2Erelation_2ETC_2E0)) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2)))) (= _let_3 _let_2))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EBAG__EVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebag_2EBAG__EVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (_let_3 V1b_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (= (= _let_4 (_let_3 c_2Ebag_2EEMPTY__BAG_2E0)) (= (_let_1 ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_4)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Ebag_2EBAG__MERGE_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e1_2E0 u) (V2e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Ebag_2EBAG__INSERT_2E2 (_let_3 V1e1_2E0)))) (let ((_let_5 (c_2Ebag_2EBAG__INSERT_2E2 (_let_3 V2e2_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (= (forall ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V1R_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_8 (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) V0f_2E0)) _let_6))) _let_3)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Esorting_2ESORTED_2E2 _let_6) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Esorting_2EPERM_2E2 _let_3) _let_8)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTS_2E2 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_3) _let_3))) V0f_2E0)) ((s _let_2) V1R_2E0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EBAG__EVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebag_2EBAG__EVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V0c_2E0)))) _let_2)))))) (forall ((A_27a d) (V0b0_2E0 u) (V1e1_2E0 u) (V2e2_2E0 u) (V3b1_2E0 u) (V4b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V4b2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b0_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V3b1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_3 V1e1_2E0)) _let_6))) (not (= _let_6 _let_2)) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_3 V2e2_2E0)) _let_2)))) (exists ((V5b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V5b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V4b2_2E0)) (_let_3 V1e1_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V3b1_2E0)) (_let_3 V2e2_2E0)) _let_2))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (V0e_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2ESING__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) (c_2Ebag_2EEL__BAG_2E1 ((s A_27a) V0e_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u) (F2_2E0 u)) (=> (forall ((V0R_2E0 u) (V2e_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (_let_1 V2e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F1_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V2e_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V2e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (app_2E2 _let_8))) (let ((_let_10 (s _let_5))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_3))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_2))) _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_3))) _let_2)))))))))))))))))) (=> (forall ((V0R_2E0 u) (V2e_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2e_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F2_2E0)) _let_8))) _let_2))) _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2)))))))))))))))) (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etotal_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2)))) (forall ((V1l_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V2e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_6) _let_6)))) (let ((_let_10 (s _let_5))) (let ((_let_11 (c_2Esorting_2EQSORT3_2E2 _let_8))) (= (_let_1 (_let_11 _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_11 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F0_2E0)) _let_8))) _let_3))) _let_2))))) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F1_2E0)) _let_8))) _let_3))) _let_2))))) (_let_1 (_let_11 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F2_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Ebag_2EBAG__UNION_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ebag_2EBAG__UNION_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 (_let_1 ((c_2Ebag_2EBAG__MERGE_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0b_2E0 u) (V1R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2Edominates_2E3 ((s (_let_2 _let_1)) V1R_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) ((s _let_1) V0b_2E0))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) _let_3))))))) (forall ((V0b1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1b2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (and (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b1) (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V1b2)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD ((mono_2Ec_2Ebag_2EBAG__UNION_2Emono_2Etyop_2Enum_2Enum V0b1) V1b2)) _let_1) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b1) _let_1)) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V1b2) _let_1)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Ebag_2Ebag__size_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2Ebag__size_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2ET)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL F0) V0a))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V4t) (not (V0b V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V3t) (and (V0b V3t) (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b)) V2x) (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0b) ((F0 V1a) V0b)) V2x))) (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V2x)))))) (forall ((V0y (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (or (= V0y ((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b)) (= V0y ((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b))) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (V0y V3x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V1b V3x)) (V2a V3x)) (V0y ((mono_2Ec_2Earithmetic_2E_2B V3x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EALWAYS V0a))) (= _let_1 (mono_2Ec_2ETemporal__Logic_2EALWAYS _let_1)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V2a) V3t) (not (V2a V3t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F0 V2a)) V1b) V0t0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= (exists ((V2t mono_2Etyop_2Enum_2Enum)) (V0P ((mono_2Ec_2Earithmetic_2E_2B V2t) V1t0))) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0P) V1t0))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder _let_2)) (c_2Ewellorder_2EfromNatWO_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))))) (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_2)) c_2Esum_2EINL_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V0n)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (s (_let_1 ((tyop_2Emin_2Efun _let_3) (_let_2 _let_3)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1b) V4t) (not (V1b V4t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t0) (exists ((V3t1 mono_2Etyop_2Enum_2Enum)) (and (V2a V3t1) (not (V1b V3t1)) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) (F0 V1b)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0a) V1b) V2t0) (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0) (or (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (and (not (V3q _let_1)) (V0a _let_1) (not (V1b _let_1))))) (forall ((V5t mono_2Etyop_2Enum_2Enum)) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V5t) V2t0))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l2_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_2 V0l_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1l1_2E0))) (=> (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_6)) (_let_5 (c_2Esorting_2EPERM_2E1 _let_3))) (= (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_6)))) (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_3))))))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a))) (= _let_1 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL _let_1)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V2a) V3t) (not (V2a V3t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F0 V2a)) V1b) V0t0)) (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2x) (or (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V2x) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b))) (= (_let_1 V0t0) (=> (not (V1b V0t0)) (and (V2a V0t0) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0)))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V4t)) ((F1 V0b) V4t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V3t)) ((F0 V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) (and (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V0b)) V1a) V2x) (((mono_2Ec_2ETemporal__Logic_2EWHEN (F1 V0b)) V1a) V2x))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V2t) (V1a V2t)) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESWHEN ((F0 V1a) V0b)) V0b))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V3t)) ((F0 V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F0 V0b)) V2x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V2x)))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0) (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (and (V1b _let_1) (V0a _let_1) (not (V3q _let_1))))))) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V0a) V1b) V2t0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V2t) (not (V0b V2t))) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EUNTIL ((F0 V1a) V0b)) V0b))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V0t0) (forall ((V2t mono_2Etyop_2Enum_2Enum)) (V1a ((mono_2Ec_2Earithmetic_2E_2B V2t) V0t0))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (V1b V0t0) (and (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (V2a V0t0))) (forall ((V7a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V7a) V1b) V0t0) mono_2Ec_2Ebool_2EF)) (forall ((V6a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V6a) V1b) V0t0) mono_2Ec_2Ebool_2ET)) (forall ((V5a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V5a) V1b) V0t0) (V5a V0t0))) (forall ((V4a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V4a) V1b) V0t0) mono_2Ec_2Ebool_2EF)) (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V3a) V1b) V0t0) mono_2Ec_2Ebool_2ET))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V2x)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V2x))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (exists ((V5J2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and (forall ((V7t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V7t) V0t0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V5J2 _let_1)) (= (V5J2 (mono_2Ec_2Enum_2ESUC _let_1)) mono_2Ec_2Enum_2E0)) (V1b _let_1)))) (forall ((V6t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V6t) V0t0))) (let ((_let_2 (V5J2 (mono_2Ec_2Enum_2ESUC _let_1)))) (or (= _let_2 mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (V5J2 _let_1)))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V5J2 V0t0)))) (exists ((V3J1 (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V3J1 V0t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and (V3J1 _let_1) (not (V1b _let_1))) (and (V3J1 (mono_2Ec_2Enum_2ESUC _let_1)) (V2a _let_1)))))))) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t0))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (or (=> (V1b _let_1) (V2a _let_1)) (V3q _let_1)))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V3t) (V0b V3t)) (((F0 V1a) V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V2x) (and (((mono_2Ec_2ETemporal__Logic_2EWHEN V0b) ((F0 V1a) V0b)) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V2x)))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (exists ((V6J2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V6J2 V0t0)) (forall ((V7t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V7t) V0t0))) (let ((_let_2 (V6J2 (mono_2Ec_2Enum_2ESUC _let_1)))) (or (= _let_2 mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (V6J2 _let_1)))))) (forall ((V8t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V8t) V0t0))) (=> (and (= (V6J2 (mono_2Ec_2Enum_2ESUC _let_1)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V6J2 _let_1))) (V2a _let_1)))))) (exists ((V3J1 (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V5d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0))) (=> (V3J1 _let_1) (not (V1b _let_1))))) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and (V3J1 _let_1) (not (V2a _let_1))) (V3J1 (mono_2Ec_2Enum_2ESUC _let_1))))) (V3J1 V0t0)))) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t0))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EBEFORE V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2EBEFORE (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) (_let_2 _let_3)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_1 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V4t) (not (V0b V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V3t) (and (not (V1a V3t)) (V0b V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b)) V2x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F0 V1a) V0b)) V2x)) (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V2x)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F0 V2a)) V1b) V0t0) (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t0)))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (or (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (and (not (V3q _let_1)) (V2a _let_1) (not (V1b _let_1))))) (forall ((V5t mono_2Etyop_2Enum_2Enum)) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V5t) V0t0))))))) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (j_mono_2Etyop_2Estring_2Echar _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2EASSOC_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2EASSOC_2E0)) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V2t) (not (V1a V2t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V0t0)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F0 V1a)) V0t0))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1b) V4t) (not (V1b V4t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t0) (forall ((V3t1 mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) (F0 V1b)))) (not (V1b V3t1))) (V2a V3t1))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3P_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V4f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_3 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool))))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V3P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2))))))))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V1x) (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE F0) V0b) V1x)))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F0 V1a)) V0b) V2x)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWATCH V0q) V1b) V2t0) (forall ((V3t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3t) V2t0))) (and (= (V0q V2t0) mono_2Ec_2Ebool_2EF) (= (or (V1b _let_1) (V0q _let_1)) (V0q (mono_2Ec_2Enum_2ESUC _let_1)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0G_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V0G_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_1 V2y_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_4 _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_11)) F0_2E0)) _let_6))) _let_2))) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_9) (_let_8 (c_2Elist_2ELIST__TO__SET_2E1 ((s _let_3) ((app_2E2 _let_6) _let_2)))))))))))))))))))) (forall ((V0G_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 ((s _let_2) V0G_2E0))) (let ((_let_4 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EdirGraph_2EREACH_2E1 _let_3)) (_let_5 (c_2Erelation_2ERTC_2E1 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3))))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3delta) V0t0))) (and (V2a _let_1) (V1b _let_1) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4t) V3delta) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0)))))))) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (or (V3q _let_1) (V0a _let_1) (V1b _let_1)))) (exists ((V5t mono_2Etyop_2Enum_2Enum)) (V1b ((mono_2Ec_2Earithmetic_2E_2B V5t) V2t0))))) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V0a) V1b) V2t0))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (or (V3q _let_1) (V1b _let_1) (V2a _let_1)))))) (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F0 V1a)) V0b) V2x))) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V2x))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1P) V0Q) V3t) (= (V1P V3t) (V0Q V3t)))) (forall ((V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2ETemporal__Logic_2ENEXT V1P) V2x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0Q) V2x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V1P) V0Q)) V2x))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V3lim0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) V1f_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_5 _let_9)) F0_2E0)) _let_4))) _let_7))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V3lim0)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V0n) V3lim0)))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 _let_7) _let_4))))) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V2lim mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_5))) (let ((_let_9 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2lim)))) (= (_let_8 ((c_2Ellist_2ELNTH_2E2 _let_4) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELGENLIST_2E2 _let_3) _let_9)))) (_let_8 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) (_let_8 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 _let_3) _let_4))))) ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) F0_2E0)) _let_4))) _let_3))))))))))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EWHEN V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2EWHEN (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ecardinal_2Ebijns_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ecardinal_2Ebijns_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V3t) (not (V0b V3t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V4t) (or (V0b V4t) (V1a V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V5t)) (not (V1a V5t))) (((F1 V1a) V0b) V5t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS ((F1 V1a) V0b)) V2x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F0 V0b)) ((F2 V1a) V0b)) V2x)))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2EF)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EALWAYS V0a) ((mono_2Ec_2ETemporal__Logic_2EUNTIL V0a) F0))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2y (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (V2y V3x) (and (not (V0b V3x)) (or (V1a V3x) (V2y ((mono_2Ec_2Earithmetic_2E_2B V3x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (or (= V2y ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b)) (= V2y ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT V1a) V0t0) (exists ((V2t1 mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V0t0) V2t1) (forall ((V3t3 mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0t0) V3t3) ((mono_2Ec_2Earithmetic_2E_3C_3D V2t1) V3t3))) (V1a V2t1))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V8t mono_2Etyop_2Enum_2Enum)) (= (F3 V8t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V5t mono_2Etyop_2Enum_2Enum)) (= (F1 V5t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F2 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE F1) V0b) V4x) (not (V0b V4x)))) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) F2) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a)) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V1a) V9x) mono_2Ec_2Ebool_2EF)) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) F3) V7x) mono_2Ec_2Ebool_2EF)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE F0) V0b) V2x) mono_2Ec_2Ebool_2EF))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EALWAYS V0a)) (mono_2Ec_2ETemporal__Logic_2EALWAYS (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1b) V0t0))) (and (= (forall ((V4a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V4a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V4a) V1b) V0t0))) _let_1) (= _let_1 (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V3a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V3a) V1b) V0t0)))) (= _let_1 (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V0t0) (exists ((V2t mono_2Etyop_2Enum_2Enum)) (V1a ((mono_2Ec_2Earithmetic_2E_2B V2t) V0t0))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V2t1 mono_2Etyop_2Enum_2Enum)) (and (V1a V2t1) ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V2t1))) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V0t0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0f_2E0 u) (V4y_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V1s_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_2))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_3) _let_9))) (= (_let_1 ((app_2E2 _let_6) _let_3)) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (= (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))))))))) (forall ((V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_6 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebool_2E_3F_21_2E1 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) (_let_5 V1s_2E0)))) ((s _let_3) V0f_2E0)))) _let_1))))))))))))))))) (and (exists ((V7g_2E0 u)) (and (forall ((V9y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V2t_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) ((app_2E2 ((s (_let_3 A_27a)) V7g_2E0)) _let_2)))) _let_2)))))) (forall ((V10x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V10x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V7g_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)))) _let_2)))))) (forall ((V8y_2E0 u)) (let ((_let_1 ((s A_27b) V8y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V7g_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))))))))) (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Ebag_2Emlt1_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Ebag_2Emlt1_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V8t mono_2Etyop_2Enum_2Enum)) (= (F3 V8t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V4t mono_2Etyop_2Enum_2Enum)) (= (F1 V4t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F2 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN F1) V0b) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b)) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) F2) V5x) mono_2Ec_2Ebool_2EF)) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) F3) V7x) (V1a V7x))) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V1a) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN F0) V0b) V2x) mono_2Ec_2Ebool_2EF))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EALWAYS V1P))) (= (_let_1 V0t0) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0) (V1P V0t0))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V5t) (not (V0b V5t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V3t) (not (V0b V3t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V4t) (and (V1a V4t) (V0b V4t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b)) V2x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F0 V0b)) ((F2 V1a) V0b)) V2x)))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 ((s A_27a) V0e_2E0))) (= (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_5) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN (F0 V2a)) V1b) V0t0) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0)))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (and (not (V3q _let_1)) (V2a _let_1) (not (V1b _let_1))))))) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t0))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (or (V2a _let_1) (V1b _let_1) (V3q _let_1)))) (exists ((V5t mono_2Etyop_2Enum_2Enum)) (V1b ((mono_2Ec_2Earithmetic_2E_2B V5t) V0t0)))))) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t0))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s) (exists ((V1a mono_2Etyop_2Enum_2Enum)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2x) V0s) ((mono_2Ec_2Earithmetic_2E_3C_3D V2x) V1a)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2EDecode_2Edecode__bnum V0m) V1p) ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Enum_2Enum V1p) (mono_2Ec_2EEncode_2Eencode__bnum V0m)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V2t) (not (V1a V2t))) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F0 V1a) V0b)))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V2t)) ((F0 V1a) V2t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL (F0 V1a)) V0t0) (not ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V0t0)))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1b V4t)) ((F0 V1b) V4t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V3t1 mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) (F0 V1b)))) (V1b V3t1) (V2a V3t1))) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not (((mono_2Ec_2ETemporal__Logic_2EWHEN (F0 V2a)) V1b) V0t0)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0) (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V2a) V0t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (or (V3q _let_1) (not (V1b _let_1))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V2x) (and ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F0 V1a)) V0b) V2x))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V3J (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V3J V0t0) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and (not (V1b _let_1)) (V3J _let_1)) (V3J (mono_2Ec_2Enum_2ESUC _let_1))))) (forall ((V5d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0))) (=> (and (V1b _let_1) (V3J _let_1)) (V2a _let_1)))))) (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t0) (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (and (V2a ((mono_2Ec_2Earithmetic_2E_2B V3delta) V0t0)) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V4t) V3delta) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V0P) V1t0) (forall ((V2t mono_2Etyop_2Enum_2Enum)) (V0P ((mono_2Ec_2Earithmetic_2E_2B V2t) V1t0))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) F0))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V0a V3t)) ((F1 V0a) V3t))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V0a) V1x) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN F0) (F1 V0a)) V1x))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V1a)) V0b) V2x)))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V8t mono_2Etyop_2Enum_2Enum)) (= (F3 V8t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V4t mono_2Etyop_2Enum_2Enum)) (= (F1 V4t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F2 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL F0) V0b) V2x) (V0b V2x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) F2) V5x) mono_2Ec_2Ebool_2EF)) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V1a) V9x) (V1a V9x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) F3) V7x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL F1) V0b) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESWHEN V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2ESWHEN (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (and (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s A_27a) V2h_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V1Q_2E0)) (_let_4 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_4 V3t_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_1))))))))) (forall ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V4h_2E0)) _let_3))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ellist_2Eevery_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))))))))))) (forall ((V6ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V6ll_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eevery_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V2t) (and (V1a V2t) (not (V0b V2t))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F0 V1a) V0b)) V0b))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2l_2E0 u) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((s _let_3) V2l_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s (_let_7 _let_1)) V1e_2E0))) (let ((_let_9 ((s (_let_7 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EEncode_2Ewf__encoder_2E2 _let_9) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EEncode_2Elift__option_2E2 _let_9) _let_4)))) (= (_let_6 (((c_2EDecode_2Edecode__option_2E3 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__option_2E1 _let_9))) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_9) _let_8))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 ((c_2EEncode_2Eencode__option_2E2 _let_8) _let_4)))) V3t))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3t))))))))))))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a)) (mono_2Ec_2ETemporal__Logic_2EEVENTUAL (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V2t) (and (V1a V2t) (not (V0b V2t))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE ((F0 V1a) V0b)) V0b))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F1 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V2t)) ((F0 V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F0 V0b)) F1) V1x)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V0b) V1x)))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2EF)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a) V1x) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN F0) V0a) V1x)))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (exists ((V2q (-> mono_2Etyop_2Enum_2Enum Bool))) (((mono_2Ec_2ETemporal__Logic_2EWATCH V2q) V0b) V1t0))) (forall ((F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V9t mono_2Etyop_2Enum_2Enum)) (= (F4 V9t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V5t mono_2Etyop_2Enum_2Enum)) (= (F2 V5t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V7t mono_2Etyop_2Enum_2Enum)) (= (F3 V7t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V3t) (not (V0b V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2EWHEN F0) V0b) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN F2) V0b) V4x) mono_2Ec_2Ebool_2ET)) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V1a) V10x) mono_2Ec_2Ebool_2ET)) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) F4) V8x) (V1a V8x))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) F3) V6x) mono_2Ec_2Ebool_2ET)))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V3t) (not (V0b V3t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V4t) (V0b V4t)) (((F1 V1a) V0b) V4t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V2x) (and (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V0b)) ((F1 V1a) V0b)) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V2x))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0y (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (or (= V0y ((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b)) (= V0y ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b))) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (=> (not (V1b V3x)) (and (V2a V3x) (V0y ((mono_2Ec_2Earithmetic_2E_2B V3x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (V0y V3x))))) (= (_let_377 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (_let_377 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ewot_2EStrongWellOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ewot_2EStrongWellOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (V0a0_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0a0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2))) (or (= _let_2 (_let_1 c_2Ellist_2ELNIL_2E0)) (exists ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V2t_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2))) (= (_let_1 V0a0_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_2)))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X3_2E0))) (let ((_let_6 (_let_4 X2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X1_2E0))) (let ((_let_10 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_11 ((s _let_10) X0_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (_let_12 tyop_2Emin_2Ebool))) (let ((_let_14 (_let_12 _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_8) _let_14))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_11) _let_9) _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_15)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_11))) _let_9))) _let_6))) _let_5))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s A_27a) X1_2E0))) (let ((_let_6 (_let_3 X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Ebag_2EBAG__DELETE_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) c_2Ebag_2EBAG__DELETE_2E0)) _let_6))) _let_5))) _let_4))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27x))) (= (_let_3 (c_2Ewot_2Emex_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27x)) c_2Ewot_2Emex_2E0)) _let_2))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V2t) (=> (V1a V2t) (V0b V2t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EWHEN V0b) ((F0 V1a) V0b)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT V0P) V1x) (V0P (mono_2Ec_2Enum_2ESUC V1x)))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EUNTIL V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2EUNTIL (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V3J (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V3J V0t0) (forall ((V5d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0))) (=> (V3J _let_1) (not (V1b _let_1))))) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and (not (V2a _let_1)) (V3J _let_1)) (V3J (mono_2Ec_2Enum_2ESUC _let_1))))))) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0y (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (or (= V0y (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a)) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (V0y V3x) mono_2Ec_2Ebool_2EF))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (V0y V2x) (and (V1a V2x) (V0y ((mono_2Ec_2Earithmetic_2E_2B V2x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_3 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (_let_1 V0b1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))) _let_2))))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2EWHEN _let_1) V0b)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (exists ((V3J1 (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V3J1 V0t0) (forall ((V5d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0))) (=> (and (V3J1 _let_1) (V1b _let_1)) (V2a _let_1)))) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and (not (V1b _let_1)) (V3J1 _let_1)) (V3J1 (mono_2Ec_2Enum_2ESUC _let_1))))))) (exists ((V6J2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and (forall ((V8t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V8t) V0t0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V6J2 _let_1)) (= (V6J2 (mono_2Ec_2Enum_2ESUC _let_1)) mono_2Ec_2Enum_2E0)) (V1b _let_1)))) (forall ((V7t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V7t) V0t0))) (let ((_let_2 (V6J2 (mono_2Ec_2Enum_2ESUC _let_1)))) (or ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (V6J2 _let_1)) (= _let_2 mono_2Ec_2Enum_2E0))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V6J2 V0t0))))) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1P))) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0) (V1P V0t0)) (_let_1 V0t0)))) (forall ((F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V9t mono_2Etyop_2Enum_2Enum)) (= (F4 V9t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V5t mono_2Etyop_2Enum_2Enum)) (= (F2 V5t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V7t mono_2Etyop_2Enum_2Enum)) (= (F3 V7t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((F5 V1a) V10t) (not (V1a V10t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V3t)) ((F1 V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE F0) V0b) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (not (V0b V4x)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE F2) V0b) V4x))) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V1a) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F5 V1a))) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) F4) V8x) mono_2Ec_2Ebool_2EF)) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) F3) V6x) mono_2Ec_2Ebool_2ET))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1t1 mono_2Etyop_2Enum_2Enum) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1t1) V2a))) (forall ((V3t2 mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3t2) V1t1) ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t2)) (V2a V3t2))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V0t0) (forall ((V2t1 mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V2t1) (V1a V2t1))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V2a)) V1b) V0t0) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t0)))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__option_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__option_2E0)) _let_3))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_5))) ((s (_let_4 _let_1)) (c_2EEncode_2Eencode__list_2E1 _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eind__type_2EFCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Eind__type_2EFCONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__option_2E1 _let_5))) ((s (_let_4 _let_1)) (c_2EEncode_2Eencode__option_2E1 _let_3))))))))))))) (forall ((A_27a d) (V0ts_2E0 u) (V1p_2E0 u) (V2a_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0ts_2E0))) (let ((_let_3 ((s A_27a) V2a_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__tree_2E1 _let_4))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EEncode_2Elift__tree_2E2 _let_4) ((s _let_1) ((c_2EEncode_2ENode_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2c_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_1 V0a_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 (_let_1 (_let_5 _let_3))) (_let_1 (_let_5 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (=> (and (forall ((V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V1b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))) (forall ((V2e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V2e_2E0)) (_let_2 V1b_2E0)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((V3b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V3b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Ebiprefix_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2EEncode_2Ebiprefix_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__list_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__list_2E0)) _let_3))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (and _let_264 (forall ((V0h mono_2Etyop_2Estring_2Echar) (V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0h) V1t)) (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V1t))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (c_2Ecombin_2EI_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d)) (and (forall ((V5m mono_2Etyop_2Enum_2Enum) (V6e_2E0 u) (V7l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V7l_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V6e_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (s _let_3))) (= (_let_6 (((c_2EEncode_2Eencode__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V5m))))) _let_4) _let_2)) (_let_6 ((c_2Elist_2EAPPEND_2E2 (_let_6 ((app_2E2 _let_4) ((s A_27b) (c_2Elist_2EHD_2E1 _let_2))))) (_let_6 (((c_2EEncode_2Eencode__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V5m))))) _let_4) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))))))))))))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3e_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V3e_2E0))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2m)))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (s _let_3))) (= (_let_7 (((c_2EEncode_2Eencode__blist_2E3 (_let_6 (i_mono_2Etyop_2Enum_2Enum _let_5))) _let_4) _let_2)) (_let_7 ((c_2Elist_2EAPPEND_2E2 (_let_7 ((app_2E2 _let_4) ((s A_27b) (c_2Elist_2EHD_2E1 _let_2))))) (_let_7 (((c_2EEncode_2Eencode__blist_2E3 (_let_6 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_4) (_let_1 (c_2Elist_2ETL_2E1 _let_2))))))))))))))) (forall ((V0e_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 (((c_2EEncode_2Eencode__blist_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0e_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V1l_2E0))) (_let_2 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2Earithmetic_2EEVEN V2n)) (F0 V2n))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EEncode_2Eencode__bnum (mono_2Ec_2Enum_2ESUC V1m)) V2n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool (F0 V2n)) ((mono_2Ec_2EEncode_2Eencode__bnum V1m) ((mono_2Ec_2Earithmetic_2EDIV V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EEncode_2Eencode__bnum mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (= (_let_376 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_376 c_2Erelation_2EWFREC_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0p (-> mono_2Etyop_2Eone_2Eone Bool))) ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Eone_2Eone V0p) mono_2Ec_2EEncode_2Eencode__unit)) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s _let_4))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_8 ((c_2EEncode_2Eencode__list_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EEncode_2Eencode__list_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0p_2E0 u)) (=> (forall ((V1a_2E0 u) (V2ts_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (=> (forall ((V3t_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s _let_1) V3t_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_1)) V2ts_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0p_2E0)) _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0p_2E0)) ((s _let_1) ((c_2EEncode_2ENode_2E2 ((s A_27a) V1a_2E0)) ((s (tyop_2Elist_2Elist _let_1)) V2ts_2E0))))))))) (forall ((V4t_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0p_2E0)) ((s _let_1) V4t_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__tree_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Eencode__tree_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Elift__tree_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EEncode_2Elift__tree_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> Bool Bool)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EEncode_2Elift__tree_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EEncode_2Elift__tree_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ellist_2ELFINITE_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (= ((F0 V0m) V1x) ((mono_2Ec_2Eprim__rec_2E_3C V1x) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0m)))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) (F0 V0m))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f0_2E0 u) (V1f1_2E0 u) (V2f2_2E0 u)) (exists ((V3fn0_2E0 u) (V4fn1_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a)))) (and (forall ((V7a0_2E0 u) (V8a1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V8a1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (app_2E2 ((s (_let_5 A_27c)) V4fn1_2E0)))) (let ((_let_7 (s A_27c))) (let ((_let_8 ((s _let_1) V7a0_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) A_27c))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_10))) (let ((_let_12 (_let_5 _let_11))) (= (_let_7 (_let_6 (_let_3 ((c_2Elist_2ECONS_2E2 _let_8) _let_4)))) (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_9 _let_12)) V2f2_2E0)) _let_8))) _let_4))) ((s A_27b) ((app_2E2 ((s (_let_9 A_27b)) V3fn0_2E0)) _let_8))))) (_let_7 (_let_6 _let_4)))))))))))))))))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27c)) V4fn1_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0))) (_let_1 V1f1_2E0)) (forall ((V5a0_2E0 u) (V6a1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) V6a1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 ((s A_27a) V5a0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_7 (_let_4 _let_6))) (let ((_let_8 (s A_27b))) (= (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) V3fn0_2E0)) ((s _let_1) ((c_2EEncode_2ENode_2E2 _let_5) _let_3)))) (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) V0f0_2E0)) _let_5))) _let_3))) ((s A_27c) ((app_2E2 ((s (_let_4 A_27c)) V4fn1_2E0)) _let_3))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0)))) (exists ((V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 V1b2_2E0) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V0b1_2E0)) (_let_1 V2b_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1v_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (= (= (_let_1 ((c_2EEncode_2Etree__CASE_2E2 ((s _let_2) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_2)) A_27b))) V2f_2E0))) (_let_1 V1v_2E0)) (exists ((V3a_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) V4l_2E0))) (let ((_let_5 ((s A_27a) V3a_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) A_27b))) (let ((_let_7 (s _let_2))) (and (= (_let_7 V0x_2E0) (_let_7 ((c_2EEncode_2ENode_2E2 _let_5) _let_4))) (= (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) V2f_2E0)) _let_5))) _let_4)) (_let_1 V1v_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Esum_2Esum__CASE_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Esum_2Esum__CASE_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_27_2E0 u) (V1M_2E0 u) (V2M_27_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) A_27b))))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V2M_27_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_3 V1M_2E0))) (=> (and (forall ((V4a0_2E0 u) (V5a1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) V5a1_2E0))) (let ((_let_4 ((s A_27a) V4a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27a) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s A_27b))) (let ((_let_9 (s _let_1))) (=> (= (_let_9 V2M_27_2E0) (_let_9 ((c_2EEncode_2ENode_2E2 _let_4) _let_3))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3f_2E0)) _let_4))) _let_3)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0f_27_2E0)) _let_4))) _let_3)))))))))))))) (= _let_6 _let_4)) (= (_let_5 ((c_2EEncode_2Etree__CASE_2E2 _let_6) (_let_2 V3f_2E0))) (_let_5 ((c_2EEncode_2Etree__CASE_2E2 _let_4) (_let_2 V0f_27_2E0)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0x Bool)) (= (mono_2Ec_2EEncode_2Eencode__bool V0x) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V0x) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))) (forall ((A_27a d) (A_27b d)) (and (forall ((V3xb_2E0 u) (V4yb_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V4yb_2E0))) (let ((_let_4 (s _let_2))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 (((c_2EEncode_2Eencode__sum_2E3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V3xb_2E0)) _let_3) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_1))))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((V0xb_2E0 u) (V1yb_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0xb_2E0))) (let ((_let_4 (s _let_2))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 (((c_2EEncode_2Eencode__sum_2E3 _let_3) ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1yb_2E0)) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_1))))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0xb_2E0 u) (V1yb_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1yb_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0xb_2E0))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 (((c_2EEncode_2Eencode__prod_2E3 _let_6) _let_3) ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) ((c_2Epair_2E_2C_2E2 _let_5) _let_1))))) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_6) _let_5)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_3) _let_1)))))))))))) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27d d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V5p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5p_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F2_2E0)) _let_3)))))))) (=> (forall ((V3b_2E0 u) (V2f_2E0 u) (V5p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5p_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) _let_6))) (let ((_let_8 ((s _let_7) V2f_2E0))) (let ((_let_9 (s _let_6))) (let ((_let_10 (s _let_4))) (let ((_let_11 ((s A_27b) V3b_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_6))) (= (_let_10 ((app_2E2 (_let_9 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_12)) F1_2E0)) _let_11))) _let_8))) _let_3)) (_let_10 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (_let_10 (c_2Esum_2EINR_2E1 _let_11))) (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) ((s A_27d) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))))))) (=> (forall ((V0a_2E0 u) (V1p_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Elist_2Elist A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_1))) ((s _let_4) V1p_2E0))) (_let_3 (c_2Esum_2EINL_2E1 _let_1))))))))) (and (forall ((V2f_2E0 u) (V3b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (=> (forall ((V4d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_1)) V2f_2E0)) ((s A_27d) V4d_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s _let_1) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F1_2E0)) ((s A_27b) V3b_2E0)))) ((s _let_2) V2f_2E0))))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V0a_2E0))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u) (V3d_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2c_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) (_let_1 V1b_2E0)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V3d_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 _let_3) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0f1_2E0 u) (V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4f0_2E0))) (let ((_let_5 (_let_3 V3f_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V0f1_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 ((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_7 V1a_2E0)) (_let_7 V2a0_2E0)))) (let ((_let_9 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_9 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_6) (_let_9 ((_let_8 _let_5) _let_4)))) (_let_9 ((_let_8 (_let_3 ((app_2E2 _let_6) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (F0_2E0 u)) (=> (forall ((V5x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (= _let_3 (_let_2 c_2Elist_2ENIL_2E0))))))) (forall ((V0a0_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b))) V0a0_2E0)))) (or (exists ((V1a_2E0 u)) (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27d))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) V0a0_2E0)) ((s _let_3) V2x_2E0))) (_let_2 (c_2Esum_2EINL_2E1 ((s A_27a) V1a_2E0))))))))) (exists ((V3f_2E0 u) (V4b_2E0 u)) (and (forall ((V5x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5x_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s _let_4))) (= (_let_8 ((app_2E2 (_let_7 V0a0_2E0)) _let_3)) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (_let_8 (c_2Esum_2EINR_2E1 ((s A_27b) V4b_2E0)))) (_let_8 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_6)) V3f_2E0)) ((s A_27d) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3)))))))))))))))) (forall ((V6d_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Einftree_2Eis__tree_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_1)) V3f_2E0)) ((s A_27d) V6d_2E0))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V4x_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2Elist_2EisPREFIX_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Elift__sum_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EEncode_2Elift__sum_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2EEncode_2Ewf__pred_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2EEncode_2Ewf__pred_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Elift__option_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EEncode_2Elift__option_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)) ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) V1e_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) V0p_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s (_let_4 _let_7)) V1e_2E0)))) (let ((_let_9 (s _let_7))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 (_let_8 _let_2)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 (_let_8 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))) (= _let_3 _let_2))))))))))))))) (forall ((A_27a d) (V0tree_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1)))) (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0tree_2E0)) ((s _let_2) c_2EEncode_2ENode_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0m))) (let ((_let_2 (mono_2Ec_2EEncode_2Eencode__bnum V0m))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2y) _let_1) (= (_let_2 V1x) (_let_2 V2y)) ((mono_2Ec_2Eprim__rec_2E_3C V1x) _let_1)) (= V1x V2y))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 ((s A_27a) V0e_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__IN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_1 tyop_2Emin_2Ebool)) V2P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 _let_7) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) V1e_2E0))) (let ((_let_3 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ewf__encoder_2E2 (_let_3 (c_2Ecombin_2EK_2E1 (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ewf__encoder_2E2 (_let_3 V0p_2E0)) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Elift__prod_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EEncode_2Elift__prod_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EisPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u) (V3d_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3d_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2c_2E0))) (let ((_let_5 (_let_1 V1b_2E0))) (let ((_let_6 (_let_3 V0a_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ebiprefix_2E2 _let_5) _let_2))) (= _let_6 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ebiprefix_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))))))))))))) (= (_let_375 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Emin_2Ebool)) (_let_375 c_2EEncode_2Ewf__encoder_2E0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_3))) (= (_let_9 (((c_2EEncode_2Eencode__blist_2E3 _let_6) _let_5) _let_2)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) c_2EEncode_2Eencode__blist_2E0)) _let_6))) _let_5))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (= (_let_87 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Emin_2Ebool)) (_let_87 c_2Elist_2EisPREFIX_2E0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 ((s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EEncode_2Ebiprefix_2E2 _let_1) _let_1))))) (forall ((A_27a d) (V0e_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V0e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))) (= V1n mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0p_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EEncode_2Ewf__pred_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EEncode_2Elift__blist_2E3 _let_5) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) c_2EEncode_2Elift__blist_2E0)) _let_5))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EEncode_2Eencode__prod_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EEncode_2Eencode__prod_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2))))))) (= (_let_374 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Enum_2Enum)) (_let_374 c_2EEncode_2Ewf__encoder_2E0)) (forall ((F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (=> (forall ((V4a mono_2Etyop_2Enum_2Enum)) (= (F2 V4a) (= V4a mono_2Ec_2Enum_2E0))) (=> (forall ((V3encode__num (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V4a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2D V4a))) (let ((_let_3 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) (let ((_let_4 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) (= ((F1 V3encode__num) V4a) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (F2 V4a)) (_let_4 (_let_4 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Earithmetic_2EEVEN V4a)) (_let_3 (V3encode__num ((mono_2Ec_2Earithmetic_2EDIV (_let_2 _let_1)) _let_1)))) (_let_4 (_let_3 (V3encode__num ((mono_2Ec_2Earithmetic_2EDIV (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_1))))))))))))) (=> (forall ((V0R (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (= (F0 V0R) (and (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0R) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (=> (and (mono_2Ec_2Earithmetic_2EEVEN V1n) (not (= V1n mono_2Ec_2Enum_2E0))) ((V0R ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2D V1n) _let_1)) _let_1)) V1n)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> (and (not (= V2n mono_2Ec_2Enum_2E0)) (not (mono_2Ec_2Earithmetic_2EEVEN V2n))) ((V0R ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2D V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) V2n)))))) (= mono_2Ec_2EEncode_2Eencode__num ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 F0)) F1)))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EEncode_2Elift__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EEncode_2Elift__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V2e_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m)))) (let ((_let_5 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 ((s (_let_2 tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_4) _let_6))) ((s (_let_5 _let_1)) ((c_2EEncode_2Eencode__blist_2E2 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__tree_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__tree_2E0)) _let_3))))))))) (= (_let_372 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (_let_372 c_2Erelation_2EWF_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_3 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3e_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V3e_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (s _let_3))) (= (_let_6 (((c_2EEncode_2Eencode__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2m)))) _let_4) _let_2)) (_let_6 ((c_2Elist_2EAPPEND_2E2 (_let_6 ((app_2E2 _let_4) ((s A_27b) (c_2Elist_2EHD_2E1 _let_2))))) (_let_6 (((c_2EEncode_2Eencode__blist_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_4) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))))))))))))) (forall ((V0e_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 (((c_2EEncode_2Eencode__blist_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0e_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V1l_2E0))) (_let_2 c_2Elist_2ENIL_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (V0ts_2E0 u) (V1e_2E0 u) (V2a_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0ts_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1e_2E0))) (let ((_let_5 (s _let_3))) (let ((_let_6 ((s A_27a) V2a_2E0))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((c_2EEncode_2Eencode__tree_2E2 _let_4) ((s _let_1) ((c_2EEncode_2ENode_2E2 _let_6) _let_2))))) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 _let_4) _let_6)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((c_2EEncode_2Eencode__list_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (c_2EEncode_2Eencode__tree_2E1 _let_4))) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EEncode_2Elift__option_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EEncode_2Elift__option_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4t mono_2Etyop_2Enum_2Enum)) (= (F7 V4t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((F3 V1a) V10t) (not (V1a V10t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V8t)) (not (V1a V8t))) (((F2 V1a) V0b) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V12t) (not (V1a V12t))) (((F4 V1a) V0b) V12t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V16t)) (V1a V16t)) (((F6 V1a) V0b) V16t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V14t) (V0b V14t)) (((F5 V1a) V0b) V14t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) V9x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (F3 V1a)) V0b) V9x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) V11x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0b) ((F4 V1a) V0b)) V11x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) V13x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0b) ((F5 V1a) V0b)) V13x)))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) V15x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0b) ((F6 V1a) V0b)) V15x)))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) V7x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0b) ((F2 V1a) V0b)) V7x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V5x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) F1) V5x))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (F0 V1a)) F7) V2x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 (((c_2EEncode_2Eencode__sum_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EEncode_2Eencode__sum_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EEVERY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EEVERY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2ECROSS_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2ECROSS_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0f_2E0 u) (V4y_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V1s_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_2))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_3) _let_9))) (= (_let_1 ((app_2E2 _let_6) _let_3)) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (= (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))))))))) (forall ((V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_6 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebool_2E_3F_21_2E1 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) (_let_5 V1s_2E0)))) ((s _let_3) V0f_2E0)))) _let_1))))))))))))))))) (and (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2))))))))))) (forall ((V9y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V9y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (exists ((V10x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s A_27a) V10x_2E0))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2)) (_let_3 V9y_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))))))))))) (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEVERY_2E2 _let_2) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_1))) V0m)) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2EEncode_2Elift__blist_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V1d_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (exists ((V3a mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (forall ((V4b mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V5c mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 (s _let_4))) (= (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V1d_2E0)) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4b)))) (_let_5 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2x_2E0)) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5c))))))) (= V4b ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool V3a) V5c)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F0_2E0)) ((s _let_2) V1d_2E0)))) ((s A_27a) V2x_2E0))))))))) (=> (forall ((V1d_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (forall ((V6a mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V7b mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 (s _let_4))) (not (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V1d_2E0)) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V6a)))) (_let_5 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2x_2E0)) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7b)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1d_2E0)))) ((s A_27a) V2x_2E0))))))))) (forall ((V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0)) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_4 ((s _let_3) V1d_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_3) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 V0p_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 F0_2E0)) _let_4))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 F1_2E0)) _let_4))) _let_1))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0)))) (forall ((V1H_2E0 u)) (=> (forall ((V2f_2E0 u) (V3g_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)))) (let ((_let_5 (s A_27b))) (=> (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V0_3C_3C_2E0)) _let_2))) (_let_1 V4x_2E0)))) (= (_let_5 ((app_2E2 (_let_4 V2f_2E0)) _let_2)) (_let_5 ((app_2E2 (_let_4 V3g_2E0)) _let_2))))))))))) (= (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V2f_2E0)))) _let_1)) (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V3g_2E0)))) _let_1)))))))))) (exists ((V6f_2E0 u)) (forall ((V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V6f_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)) ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) V1e_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (app_2E2 ((s (_let_5 _let_4)) V1e_2E0)))) (let ((_let_7 (s _let_4))) (let ((_let_8 (app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) V0p_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2))) ((mono_2Ec_2EEncode_2Ebiprefix_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 (_let_6 _let_3)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 (_let_6 _let_2))))) (= _let_3 _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_2))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n)))) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2EMOD V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_2))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_4 (c_2Ellist_2ELREPEAT_2E1 _let_2)) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))) (_let_4 c_2Ellist_2ELNIL_2E0)) (_let_4 ((c_2Ellist_2ELGENLIST_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2))) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))))))))))))) (forall ((A_27a d) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V12n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F3_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V12n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V9n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V9n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V7n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V1a0_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1a0_27_2E0)))) (forall ((V2_27tree_27_2E0 u) (V3_27_40temp_20_40ind__typeEncode0list_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (and (forall ((V4a0_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (exists ((V5a0_2E0 u) (V6a1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V6a1_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V3_27_40temp_20_40ind__typeEncode0list_27_2E0)) _let_4))) (= (_let_3 V4a0_27_2E0) (_let_3 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) V5a0_2E0)) (_let_2 ((c_2Eind__type_2EFCONS_2E2 _let_4) (_let_2 F1_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27tree_27_2E0)) ((s _let_1) V4a0_27_2E0))))))) (forall ((V8a1_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8a1_27_2E0))) (=> (or (exists ((V10a0_2E0 u) (V11a1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V11a1_2E0))) (let ((_let_5 (_let_3 V10a0_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 V2_27tree_27_2E0)) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 V3_27_40temp_20_40ind__typeEncode0list_27_2E0)) _let_4))) (= (_let_3 V8a1_27_2E0) (_let_3 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0))))) ((s A_27a) c_2Ebool_2EARB_2E0)) (_let_2 ((c_2Eind__type_2EFCONS_2E2 _let_5) (_let_2 ((c_2Eind__type_2EFCONS_2E2 _let_4) (_let_2 F3_2E0))))))))))))))))) (= _let_3 (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)))) ((s A_27a) c_2Ebool_2EARB_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V3_27_40temp_20_40ind__typeEncode0list_27_2E0)) _let_3))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27tree_27_2E0)) ((s _let_1) V1a0_27_2E0)))))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) _let_1)) V0rep_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0p_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0p_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s (tyop_2Eoption_2Eoption A_27a)) V1x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Elift__option_2E2 _let_3) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_5) (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) _let_3)))))))))))))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2EEncode_2Etree__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EEncode_2Etree__size_2E0)) _let_4))) _let_2))))))))))) (= (_let_365 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (_let_365 c_2Emin_2E_40_2E0)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1rows1_2E0 u) (V0v_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F0_2E0)) ((s _let_2) V1rows1_2E0)))) ((s A_27a) V0v_2E0)))) (exists ((V3r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_2)) V1rows1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 _let_3) ((s A_27a) V0v_2E0))))))))))))))))) (forall ((V0v_2E0 u) (V1rows1_2E0 u) (V2rows2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2rows2_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 (c_2EpatternMatches_2EPMATCH_2E2 _let_5))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_3 V1rows1_2E0))) (let ((_let_9 (_let_1 tyop_2Emin_2Ebool))) (= (_let_7 (_let_6 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_8) _let_4)))) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_9)) F0_2E0)) _let_8))) _let_5))) (_let_7 (_let_6 _let_8))) (_let_7 (_let_6 _let_4))))))))))))))))) (forall ((A_27b d) (A_27c d) (A_27e d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27e))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27e))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V1a mono_2Ec_2Enum_2E0))) (let ((_let_2 (V0b mono_2Ec_2Enum_2E0))) (let ((_let_3 (not _let_2))) (and (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1a) mono_2Ec_2Enum_2E0) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) mono_2Ec_2Enum_2E0) _let_2) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) mono_2Ec_2Enum_2E0) (and _let_1 _let_2)) (= (or _let_2 _let_1) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) mono_2Ec_2Enum_2E0)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) mono_2Ec_2Enum_2E0) (or _let_1 _let_3)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) mono_2Ec_2Enum_2E0) _let_3) (= (and _let_3 _let_1) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) mono_2Ec_2Enum_2E0) _let_1) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) mono_2Ec_2Enum_2E0) _let_1) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a) mono_2Ec_2Enum_2E0) mono_2Ec_2Ebool_2ET)))))) (= (_let_364 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool)) (_let_364 c_2Elist_2ELENGTH_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Ewleast_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ewellorder_2Ewleast_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0p_2E0 u) (V1p_27_2E0 u) (V2g_2E0 u) (V3g_27_2E0 u) (V4r_2E0 u) (V5r_27_2E0 u) (V6v_2E0 u) (V7v_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V7v_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27c)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (s (_let_3 A_27b)))) (let ((_let_7 (_let_6 V1p_27_2E0))) (let ((_let_8 (s (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_9 (_let_1 V6v_2E0))) (let ((_let_10 (_let_6 V0p_2E0))) (=> (and (forall ((V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 V6v_2E0) (_let_5 ((app_2E2 ((s (_let_2 A_27b)) V0p_2E0)) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V2g_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V3g_27_2E0)) _let_1))))))))))) (forall ((V9x_2E0 u)) (let ((_let_1 ((s A_27a) V9x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27c)))) (let ((_let_4 (s A_27c))) (let ((_let_5 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V2g_2E0)) _let_1))) (= (_let_5 V6v_2E0) (_let_5 ((app_2E2 ((s (_let_2 A_27b)) V0p_2E0)) _let_1)))) (= (_let_4 ((app_2E2 (_let_3 V4r_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V5r_27_2E0)) _let_1)))))))))) (= _let_9 _let_2) (= _let_10 _let_7)) (= (_let_8 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_10) (_let_5 V2g_2E0)) (_let_4 V4r_2E0)) _let_9)) (_let_8 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_7) (_let_5 V3g_27_2E0)) (_let_4 V5r_27_2E0)) _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 A_27c))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Eoption_2Esome_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Eoption_2Esome_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2p_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27c) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2p_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (=> (forall ((V0ff_2E0 u) (V2p_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V2p_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) V0ff_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_2 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_1)) (_let_7 ((app_2E2 _let_6) ((s A_27a) ((app_2E2 _let_4) _let_1))))))))))))))) (forall ((V0ff_2E0 u) (V1v_2E0 u) (V2p_2E0 u) (V3g_2E0 u) (V4r_2E0 u)) (let ((_let_1 ((s A_27a) V1v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27d)) V4r_2E0))) (let ((_let_4 ((s (_let_2 tyop_2Emin_2Ebool)) V3g_2E0))) (let ((_let_5 (_let_2 A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V2p_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_5))) (let ((_let_9 (s (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_11 ((s _let_10) V0ff_2E0))) (let ((_let_12 (_let_2 A_27b))) (let ((_let_13 (_let_8 _let_12))) (=> (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0ff_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (= (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_13)) F0_2E0)) _let_11))) _let_7))) _let_4) _let_3) ((s A_27b) ((app_2E2 _let_11) _let_1)))) (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 (_let_6 ((app_2E2 ((s (_let_8 _let_5)) F1_2E0)) _let_7))) _let_4) _let_3) _let_1))))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Esome_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Esome_2E0)) _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2Elist_2EEL_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EEL_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27d)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27c) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E0)) _let_6))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6p Bool) (V4r_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V3v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V4r_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) F1_2E0)) (_let_7 (i_mono_2Etyop_2Emin_2Ebool V6p))))) _let_6))) _let_3))) (=> V6p (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))) (=> (forall ((V6p Bool) (V4r_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V4r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_2))) (= (and V6p (= (_let_9 ((app_2E2 _let_5) _let_1)) (_let_9 c_2Eoption_2ENONE_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) F0_2E0)) (_let_6 (i_mono_2Etyop_2Emin_2Ebool V6p))))) _let_5))) _let_1)))))))))))))) (and (forall ((V0v_2E0 u) (V1p Bool) (V2infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) c_2Elist_2ENIL_2E0)) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1p))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2infos))))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1p) V2infos)))) (forall ((V3v_2E0 u) (V4r_2E0 u) (V5rows_2E0 u) (V6p Bool) (V7infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 ((s _let_3) V4r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Emin_2Ebool V6p)))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s _let_7))) (let ((_let_12 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (s (tyop_2Elist_2Elist _let_3)))) (let ((_let_15 (_let_14 V5rows_2E0))) (let ((_let_16 (c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 _let_1))) (let ((_let_17 (s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_12)))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (_let_17 (((_let_16 (_let_14 ((c_2Elist_2ECONS_2E2 _let_4) _let_15))) _let_6) (_let_13 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7infos))))) (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (_let_17 (((_let_16 _let_15) (_let_5 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F0_2E0)) _let_6))) _let_4))) _let_1))) (_let_13 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F1_2E0)) _let_6))) _let_4))) _let_1)))) V7infos))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2c Bool) (V4c_27 Bool)) (= ((F0 V2c) V4c_27) (or V4c_27 V2c))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4c_27 Bool) (V5infos_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool V2c))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (=> (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V5infos_27) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos)) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2c) V4c_27)))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__CONJ V3infos) V5infos_27)))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27d) X3_2E0))) (let ((_let_2 ((s A_27b) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EpatternMatches_2EPMATCH__ROW__COND_2E0)) _let_8))) _let_6))) _let_2))) _let_1)))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d)) (and (forall ((V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l2_2E0))) (let ((_let_4 (_let_2 V1l1_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_5 ((((c_2Esorting_2EPART_2E4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 c_2Elist_2ENIL_2E0)) _let_4) _let_3)) (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_3))))))))) (forall ((V3P_2E0 u) (V4h_2E0 u) (V5rst_2E0 u) (V6l1_2E0 u) (V7l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7l2_2E0))) (let ((_let_4 ((s A_27a) V4h_2E0))) (let ((_let_5 (c_2Elist_2ECONS_2E2 _let_4))) (let ((_let_6 (_let_2 V6l1_2E0))) (let ((_let_7 (_let_2 V5rst_2E0))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_9 (c_2Esorting_2EPART_2E4 _let_8))) (let ((_let_10 (_let_9 _let_7))) (let ((_let_11 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_11 (((_let_9 (_let_2 (_let_5 _let_7))) _let_6) _let_3)) (_let_11 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_8) _let_4))) (_let_11 ((_let_10 (_let_2 (_let_5 _let_6))) _let_3))) (_let_11 ((_let_10 _let_6) (_let_2 (_let_5 _let_3))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rs_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 ((s _let_2) V2r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 (s _let_1))) (= (= (_let_6 ((app_2E2 _let_4) _let_5)) (_let_6 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 _let_5) (_let_3 ((c_2Elist_2ECONS_2E2 _let_4) (_let_3 V1rs_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Elist_2Elist _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Elist_2EMAP_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EMAP_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2l_2E0 u) (V0n mono_2Etyop_2Enum_2Enum) (V1A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V2l_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (and (forall ((V3e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V3e_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1A_2E0))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_4))) V0n)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F1_2E0)) _let_4))) (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))))) ((s _let_1) V1A_2E0)))))))))))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1A_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V2l_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun _let_4))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_10 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_8 _let_14)) F0_2E0)) _let_3))) _let_2))) _let_5)) (_let_12 ((c_2Epair_2E_2C_2E2 _let_5) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_7 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_2) ((s (_let_7 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V0n)))))) ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) _let_2)))))))))))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a))) (let ((_let_2 ((s _let_1) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epair_2EFST_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_2)))))))) (forall ((V0is mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1xs_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0is)))) (let ((_let_6 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a))) (let ((_let_7 (s (tyop_2Elist_2Elist _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_6))) (= (_let_2 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_5) _let_3)) (_let_2 ((c_2Elist_2EMAP_2E2 ((s (_let_8 A_27a)) c_2Epair_2ESND_2E0)) (_let_7 ((c_2Elist_2EFILTER_2E2 ((s (_let_8 tyop_2Emin_2Ebool)) F0_2E0)) (_let_7 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewellorder_2Ewellfounded_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Ewellfounded_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V4v_2E0 u) (V6r_2E0 u) (V8r_27_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V8r_27_2E0))) (let ((_let_6 (_let_4 V6r_2E0))) (let ((_let_7 ((s A_27b) V4v_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s _let_1))) (let ((_let_12 (_let_11 ((app_2E2 _let_5) _let_7)))) (= (=> (not (= _let_12 (_let_11 c_2Eoption_2ENONE_2E0))) (= _let_12 (_let_11 ((app_2E2 _let_6) _let_7)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_2 _let_10)) F0_2E0)) _let_7))) _let_6))) _let_5))))))))))))))))) (and (forall ((V0P_2E0 u) (V1v_2E0 u) (V2rows__before_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))))) (let ((_let_2 (_let_1 V2rows__before_2E0))) (let ((_let_3 ((s A_27b) V1v_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) ((s A_27a) c_2Ebool_2EARB_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E4 _let_4) _let_3) _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (forall ((V3P_2E0 u) (V4v_2E0 u) (V5rows__before_2E0 u) (V6r_2E0 u) (V7rows__after_2E0 u)) (let ((_let_1 ((s A_27b) V4v_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V6r_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 ((app_2E2 _let_5) _let_1)))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_11 (_let_10 V5rows__before_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_4))) (let ((_let_13 (_let_12 tyop_2Emin_2Ebool))) (let ((_let_14 (_let_12 _let_13))) (let ((_let_15 (_let_10 V7rows__after_2E0))) (let ((_let_16 (c_2Elist_2ECONS_2E2 _let_5))) (let ((_let_17 ((c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E4 _let_8) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_17 _let_11) (_let_10 (_let_16 _let_15))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_17 (_let_10 (_let_16 _let_11))) _let_15))) (=> (not (= _let_7 (_let_6 c_2Eoption_2ENONE_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_3 _let_14)) F0_2E0)) _let_1))) _let_5))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_8) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_7)))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1p_2E0 u) (V2g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (forall ((V3x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2g_2E0)) ((s A_27b) V3x_2E0)))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 ((s A_27a) V0v_2E0)) ((s (_let_1 A_27a)) V1p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2g_2E0)))) mono_2Ec_2Ebool_2EF)))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELUNFOLD_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0p_2E0 u) (V1g_2E0 u) (V2i_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((s A_27a) V6y_2E0))) (let ((_let_2 ((s A_27b) V2i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1g_2E0))) (let ((_let_7 (_let_3 A_27b))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0p_2E0 u) (V1g_2E0 u) (V2i_2E0 u)) (=> (forall ((V3x1_2E0 u) (V4x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x2_2E0))) (let ((_let_3 (_let_1 V3x1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V0p_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (app_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) V1g_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))) (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2)))) (= _let_3 _let_2))))))))))) (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 ((s A_27b) V2i_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1g_2E0))) (let ((_let_8 (_let_4 A_27b))) (let ((_let_9 ((s _let_8) V0p_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_5))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_9) _let_7) _let_3) _let_2))) (= (_let_1 (c_2Emin_2E_40_2E1 (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_7))) _let_3)))) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1p_2E0 u) (V7x_2E0 u) (V8row_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V1p_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_8 ((s _let_7) V8row_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_4 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3))) _let_8))) (= (_let_2 ((app_2E2 _let_8) ((s A_27a) ((app_2E2 _let_6) _let_3)))) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))) (forall ((V0v_2E0 u) (V1p_2E0 u) (V2g_2E0 u) (V3r_2E0 u) (V4rows1_2E0 u) (V5rows2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V5rows2_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_2 V4rows1_2E0)))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) V0v_2E0)))) (let ((_let_6 (s A_27c))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (=> (and (forall ((V6x_2E0 u)) (let ((_let_1 (s A_27c))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V3r_2E0)) ((s A_27b) V6x_2E0))) (_let_1 c_2Ebool_2EARB_2E0)))) (forall ((V7x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 ((s A_27b) V7x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V1p_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V2g_2E0)) _let_2))) (= (_let_9 V0v_2E0) (_let_9 ((app_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEVERY_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_2))) ((s (tyop_2Elist_2Elist _let_1)) V5rows2_2E0)))))))))))))))) (= (_let_6 (_let_5 (_let_2 (_let_4 (_let_2 ((c_2Elist_2ECONS_2E2 ((s _let_1) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_7 A_27a)) V1p_2E0)) ((s (_let_7 tyop_2Emin_2Ebool)) V2g_2E0)) ((s (_let_7 A_27c)) V3r_2E0)))) _let_3)))))) (_let_6 (_let_5 (_let_2 (_let_4 _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0p_2E0 u) (V1g_2E0 u) (V2r_2E0 u) (V3p_27_2E0 u) (V4g_27_2E0 u) (V5r_27_2E0 u) (V6rows1_2E0 u) (V7rows2_2E0 u) (V8rows3_2E0 u) (V9v_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V8rows3_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s _let_1))) (let ((_let_6 (c_2Elist_2EAPPEND_2E2 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 V6rows1_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 (_let_5 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_4 A_27b)) V0p_2E0)) ((s (_let_4 tyop_2Emin_2Ebool)) V1g_2E0)) ((s (_let_4 A_27c)) V2r_2E0)))) (_let_2 V7rows2_2E0)))))))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V9v_2E0)))) (let ((_let_8 (s A_27c))) (let ((_let_9 (tyop_2Emin_2Efun A_27d))) (=> (forall ((V10x_27_2E0 u)) (let ((_let_1 ((s A_27d) V10x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V4g_27_2E0)) _let_1))) (= (_let_3 V9v_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V3p_27_2E0)) _let_1)))) (exists ((V11x_2E0 u)) (let ((_let_1 ((s A_27a) V11x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V3p_27_2E0)) ((s A_27d) V10x_27_2E0))) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V0p_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V1g_2E0)) _let_1))))))))))))) (= (_let_8 (_let_7 (_let_2 (_let_6 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_5 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_9 A_27b)) V3p_27_2E0)) ((s (_let_9 tyop_2Emin_2Ebool)) V4g_27_2E0)) ((s (_let_9 A_27c)) V5r_27_2E0)))) _let_3)))))) (_let_8 (_let_7 (_let_2 (_let_6 _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V5v_2E0 u) (V7row_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V5v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V7row_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F0_2E0)) _let_3))) _let_6))) (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0))))))))))) (forall ((V0r1_2E0 u) (V1r2_2E0 u) (V2rows1_2E0 u) (V3rows2_2E0 u) (V4rows3_2E0 u) (V5v_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (_let_4 ((c_2Elist_2ECONS_2E2 (_let_5 V1r2_2E0)) (_let_4 V4rows3_2E0))))) (let ((_let_7 (_let_4 V3rows2_2E0))) (let ((_let_8 (c_2Elist_2EAPPEND_2E2 (_let_4 V2rows1_2E0)))) (let ((_let_9 ((s A_27a) V5v_2E0))) (let ((_let_10 (c_2EpatternMatches_2EPMATCH_2E2 _let_9))) (let ((_let_11 (s A_27b))) (let ((_let_12 (_let_5 V0r1_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (=> (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_14 (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 _let_12) _let_9))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((c_2Elist_2EEVERY_2E2 ((s _let_13) ((app_2E2 ((s (_let_2 _let_13)) F0_2E0)) _let_9))) _let_7)))) (forall ((V6x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27b) V6x_2E0))))) (let ((_let_4 ((s A_27a) V5v_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (=> (= (_let_2 ((app_2E2 (_let_5 V0r1_2E0)) _let_4)) _let_3) (= (_let_2 ((app_2E2 (_let_5 V1r2_2E0)) _let_4)) _let_3))))))))) (= (_let_11 (_let_10 (_let_4 (_let_8 (_let_4 ((c_2Elist_2ECONS_2E2 _let_12) (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_6)))))))) (_let_11 (_let_10 (_let_4 ((c_2Elist_2EAPPEND_2E2 (_let_4 (_let_8 _let_7))) _let_6))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 ((s A_27b) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EpatternMatches_2EPMATCH__ROW__COND_2E0)) _let_8))) _let_6))) _let_2))) _let_1)))))))))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (c_2Esorting_2EPERM_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) _let_2))) _let_6) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) _let_6))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u) (V2rows_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))))) (let ((_let_2 (_let_1 V2rows_2E0))) (let ((_let_3 ((s A_27b) V1v_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) ((s A_27a) ((c_2EpatternMatches_2EPMATCH_2E2 _let_3) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E4 _let_4) _let_3) (_let_1 c_2Elist_2ENIL_2E0)) _let_2)))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1k mono_2Etyop_2Enum_2Enum) (V4m mono_2Etyop_2Enum_2Enum) (V5x mono_2Etyop_2Enum_2Enum)) (= ((((F0 V3f) V1k) V4m) V5x) (V3f ((mono_2Ec_2Earithmetic_2E_2B V5x) ((mono_2Ec_2Earithmetic_2E_2A V1k) V4m))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum) (V2g (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V4m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4m) V0n) (= (V2g V4m) ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum (((F0 V3f) V1k) V4m)) (mono_2Ec_2Epred__set_2Ecount V1k))))) (= ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum V3f) (mono_2Ec_2Epred__set_2Ecount ((mono_2Ec_2Earithmetic_2E_2A V1k) V0n))) ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum V2g) (mono_2Ec_2Epred__set_2Ecount V0n))))))) (forall ((V0 Bool)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1c Bool) (V2rows_2E0 u) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V2rows_2E0))) (let ((_let_3 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos)))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_4) _let_2) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1c))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_4) _let_2) (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (((mono_2Ec_2Elist_2EMAP2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Elist_2EMAP2_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V2t) (not (V0b V2t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F1 V1a) V0b) V3t) (and (V1a V3t) (V0b V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F0 V0b)) ((F1 V1a) V0b))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2p Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_2)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 ((s A_27a) V0v_2E0)) _let_1) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V2p))) ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1)))) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0d_2E0 u) (V1c_2E0 u) (V2b_2E0 u) (V3a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0d_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V2b_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27d))) (let ((_let_7 ((s (_let_6 tyop_2Emin_2Ebool)) V1c_2E0))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V3a_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (=> (= _let_5 (_let_4 c_2Epred__set_2EEMPTY_2E0)) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ecardinal_2Ecardleq_2E2 _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ecardinal_2Ecardleq_2E2 _let_7) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun (_let_6 (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_8) _let_7))) ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2 Bool) (X3 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_4) _let_3) (_let_8 (i_mono_2Etyop_2Emin_2Ebool X2))) ((s _let_5) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X3))))) (((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E0)) _let_4))) _let_3))) X2) X3))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows1a_2E0 u) (V2rows1b_2E0 u) (V3rows2a_2E0 u) (V4rows2b_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V4rows2b_2E0))) (let ((_let_3 (_let_1 V2rows1b_2E0))) (let ((_let_4 (_let_1 V3rows2a_2E0))) (let ((_let_5 (_let_1 V1rows1a_2E0))) (let ((_let_6 (c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 ((s A_27a) V0v_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_4))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_1))) (= (= (_let_7 ((app_2E2 _let_4) _let_5)) (_let_7 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0v_2E0 u) (V1rs_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1rs_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (=> (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F0_2E0)) _let_4))) _let_3))) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Elinear__order_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27c) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E0)) _let_6))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27c) X3_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 (_let_3 A_27c))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_11))) (let ((_let_13 (s _let_2))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E4 _let_9) _let_7) _let_5) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E0)) _let_9))) _let_7))) _let_5))) _let_1))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v__old_2E0 u) (V1v__new_2E0 u) (V2rows__old_2E0 u) (V3rows__new_2E0 u) (V4r__old_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s A_27c))) (let ((_let_3 (_let_2 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V1v__new_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) _let_1))) V3rows__new_2E0))))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_6 (_let_5 V2rows__old_2E0))) (let ((_let_7 ((s _let_4) V4r__old_2E0))) (let ((_let_8 ((s A_27a) V0v__old_2E0))) (let ((_let_9 (c_2EpatternMatches_2EPMATCH_2E2 _let_8))) (let ((_let_10 (s _let_1))) (=> (= (_let_10 ((app_2E2 _let_7) _let_8)) (_let_10 c_2Eoption_2ENONE_2E0)) (=> (= (_let_2 (_let_9 _let_6)) _let_3) (= (_let_2 (_let_9 (_let_5 ((c_2Elist_2ECONS_2E2 _let_7) _let_6)))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F3_2E0 u) (F1_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V6x_2E0 u) (V7r_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V7r_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_3))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F3_2E0)) _let_1))) _let_5)) (_let_6 ((app_2E2 _let_5) _let_1))))))))))) (=> (forall ((V3rows_2E0 u) (V6x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) V3rows_2E0))) (let ((_let_6 ((s A_27b) V6x_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_1 A_27c))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F1_2E0)) _let_5))) _let_6)) (_let_8 ((c_2EpatternMatches_2EPMATCH_2E2 _let_6) ((s (tyop_2Elist_2Elist _let_2)) ((c_2Elist_2EMAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) F3_2E0)) _let_6))) _let_5))))))))))))))) (=> (forall ((V1p_2E0 u) (V2g_2E0 u) (V8r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) V8r_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) V1p_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F2_2E0)) _let_8))) _let_6))) _let_4)) (_let_10 (((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E3 _let_8) _let_6) _let_4)))))))))))))))) (=> (forall ((V4x_2E0 u) (V5r_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V5r_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_3))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F0_2E0)) _let_1))) _let_5)) (_let_6 ((app_2E2 _let_5) _let_1))))))))))) (forall ((V0v_2E0 u) (V1p_2E0 u) (V2g_2E0 u) (V3rows_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) V3rows_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V2g_2E0))) (let ((_let_8 (_let_2 A_27a))) (let ((_let_9 ((s _let_8) V1p_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_11))) (let ((_let_13 (s (tyop_2Elist_2Elist _let_10)))) (let ((_let_14 (_let_2 A_27c))) (=> (forall ((V4x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s A_27b) V4x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) ((s (tyop_2Elist_2Elist _let_2)) ((c_2Elist_2EMAP_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) ((s (tyop_2Elist_2Elist _let_3)) V3rows_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 ((s A_27a) V0v_2E0)) (_let_13 ((c_2Elist_2ECONS_2E2 ((s _let_10) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_9) _let_7) ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_14)) F1_2E0)) _let_5))))) (_let_13 c_2Elist_2ENIL_2E0)))) (_let_13 ((c_2Elist_2EMAP_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F2_2E0)) _let_9))) _let_7))) _let_5)))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0p_2E0 u) (V1g_2E0 u) (V2r_2E0 u) (V3v_2E0 u) (V4rows_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V4rows_2E0))) (let ((_let_4 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V3v_2E0)))) (let ((_let_5 (s A_27c))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27c))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V2r_2E0)) ((s A_27a) V5x_2E0))) (_let_1 c_2Ebool_2EARB_2E0)))) (= (_let_5 (_let_4 (_let_2 ((c_2Elist_2ESNOC_2E2 ((s _let_1) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_6 A_27b)) V0p_2E0)) ((s (_let_6 tyop_2Emin_2Ebool)) V1g_2E0)) ((s (_let_6 A_27c)) V2r_2E0)))) _let_3)))) (_let_5 (_let_4 _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2EFILTER_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Elist_2EFILTER_2E0)) _let_6))) _let_4))))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2ESUNTIL _let_1) V0b)))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1v_27_2E0 u) (V2rows_2E0 u) (V3rows_27_2E0 u) (V4r_2E0 u) (V5r_27_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V3rows_27_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 V5r_27_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V1v_27_2E0))) (let ((_let_9 (c_2EpatternMatches_2EPMATCH_2E2 _let_8))) (let ((_let_10 (s A_27b))) (let ((_let_11 (_let_3 V2rows_2E0))) (let ((_let_12 (_let_5 V4r_2E0))) (let ((_let_13 (_let_7 V0v_2E0))) (let ((_let_14 (s _let_1))) (=> (and (= (_let_10 (_let_9 _let_11)) (_let_10 (_let_9 _let_4))) (= (_let_14 ((app_2E2 _let_12) _let_8)) (_let_14 ((app_2E2 _let_6) _let_8))) (= _let_13 _let_8)) (= (_let_10 ((c_2EpatternMatches_2EPMATCH_2E2 _let_13) (_let_3 ((c_2Elist_2ECONS_2E2 _let_12) _let_11)))) (_let_10 (_let_9 (_let_3 ((c_2Elist_2ECONS_2E2 _let_6) _let_4))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (= (_let_363 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)) (_let_363 c_2Elist_2ENIL_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V3p_2E0 u) (V4g_2E0 u) (V0v_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V3p_2E0)))) ((s _let_2) V4g_2E0)))) ((s A_27b) V0v_2E0)))) (exists ((V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_1 A_27b)) V3p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V4g_2E0)) ((s A_27b) V0v_2E0)) ((s A_27d) V5x_2E0))))))))))))) (=> (forall ((V3p_2E0 u) (V4g_2E0 u) (V0v_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27d) V6x_2E0))) (let ((_let_2 ((s A_27b) V0v_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V4g_2E0))) (let ((_let_7 (_let_3 A_27b))) (let ((_let_8 ((s _let_7) V3p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F1_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0v_2E0 u) (V1rs_2E0 u) (V2r_2E0 u) (V3p_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V1rs_2E0))) (let ((_let_5 ((s A_27b) V0v_2E0))) (let ((_let_6 (c_2EpatternMatches_2EPMATCH_2E2 _let_5))) (let ((_let_7 (s A_27c))) (let ((_let_8 (tyop_2Emin_2Efun A_27d))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_10 V4g_2E0))) (let ((_let_12 (_let_8 A_27b))) (let ((_let_13 ((s _let_12) V3p_2E0))) (let ((_let_14 (_let_1 _let_9))) (let ((_let_15 (tyop_2Emin_2Efun _let_9))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 (tyop_2Emin_2Efun _let_12))) (let ((_let_18 ((s (_let_8 A_27c)) V2r_2E0))) (let ((_let_19 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_20 (_let_15 _let_19))) (let ((_let_21 (s A_27a))) (and (= (_let_21 (_let_6 ((s (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a)))) c_2Elist_2ENIL_2E0))) (_let_21 c_2EpatternMatches_2EPMATCH__INCOMPLETE_2E0)) (= (_let_7 (_let_6 (_let_3 ((c_2Elist_2ECONS_2E2 ((s _let_2) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_13) _let_11) _let_18))) _let_4)))) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s (_let_17 _let_20)) F0_2E0)) _let_13))) _let_11))) _let_5))) (_let_7 ((app_2E2 _let_18) ((s A_27d) (c_2Emin_2E_40_2E1 (_let_10 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_17 _let_16)) F1_2E0)) _let_13))) _let_11))) _let_5))))))) (_let_7 (_let_6 _let_4))))))))))))))))))))))))))))))) (= (_let_362 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Elist_2EMAP2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool)) (_let_362 c_2Elist_2EMAP2_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V2c Bool) (V0v_2E0 u) (V4p_2E0 u) (V5g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V5g_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) V4p_2E0))) (let ((_let_6 ((s A_27a) V0v_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (= (=> V2c (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_10)) F0_2E0)) (_let_7 (i_mono_2Etyop_2Emin_2Ebool V2c))))) _let_6))) _let_5))) _let_3))))))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4p_2E0 u) (V5g_2E0 u) (V6r_2E0 u) (V7c_27 Bool)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V5g_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) V4p_2E0))) (let ((_let_6 ((s A_27a) V0v_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_7 (i_mono_2Etyop_2Emin_2Ebool V2c)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (tyop_2Emin_2Efun A_27a))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_14 (_let_11 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_15 (s (tyop_2Elist_2Elist _let_14)))) (let ((_let_16 (_let_15 V1rows_2E0))) (let ((_let_17 (c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((_let_17 _let_16) _let_8) (_let_13 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (=> (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3)))) (= V2c V7c_27)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((_let_17 (_let_15 ((c_2Elist_2ESNOC_2E2 ((s _let_14) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_5) _let_3) ((s (_let_1 A_27b)) V6r_2E0)))) _let_16))) (_let_7 (i_mono_2Etyop_2Emin_2Ebool V7c_27))) (_let_13 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_12)) F0_2E0)) _let_8))) _let_6))) _let_5))) _let_3)))) V3infos)))))))))))))))))))))))))))) (forall ((F0 (-> Bool Bool Bool))) (=> (forall ((V2i1 Bool) (V3i2 Bool)) (= (or V2i1 V3i2) ((F0 V2i1) V3i2))) (forall ((V0ip1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1ip2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__DISJ V0ip1) V1ip2) (((mono_2Ec_2Elist_2EMAP2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool F0) V0ip1) V1ip2))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3p_2E0 u) (V4g_2E0 u) (V0v_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 ((s A_27c) V0v_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V4g_2E0))) (let ((_let_7 (_let_3 A_27c))) (let ((_let_8 ((s _let_7) V3p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0v_2E0 u) (V1rs_2E0 u) (V2r_2E0 u) (V3p_2E0 u) (V4g_2E0 u)) (let ((_let_1 ((s A_27c) V0v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V4g_2E0))) (let ((_let_6 (_let_2 A_27c))) (let ((_let_7 ((s _let_6) V3p_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27c))) (let ((_let_9 (_let_8 _let_3))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 ((s (_let_2 A_27a)) V2r_2E0))) (let ((_let_12 (s A_27a))) (let ((_let_13 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_14 (_let_8 _let_13))) (let ((_let_15 (s (tyop_2Elist_2Elist _let_14)))) (let ((_let_16 (s _let_13))) (=> (not (= (_let_16 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_7) _let_5) _let_11) _let_1)) (_let_16 c_2Eoption_2ENONE_2E0))) (= (_let_12 ((c_2EpatternMatches_2EPMATCH_2E2 _let_1) (_let_15 ((c_2Elist_2ECONS_2E2 ((s _let_14) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_11))) (_let_15 V1rs_2E0))))) (_let_12 ((app_2E2 _let_11) ((s A_27b) (c_2Emin_2E_40_2E1 (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_5))) _let_1))))))))))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0A_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_1 _let_4))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_3))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (_let_5 ((c_2Ecardinal_2Eset__exp_2E2 _let_3) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V1n))))))))))))) (forall ((V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Elist_2E1 _let_3))) ((s _let_4) (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V1v_2E0 u) (V2r_2E0 u) (V3rs_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V3rs_2E0))) (let ((_let_5 ((s _let_2) V2r_2E0))) (let ((_let_6 ((s A_27c) V1v_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_1))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_4))) (not (= (_let_9 ((app_2E2 _let_5) _let_6)) (_let_9 c_2Eoption_2ENONE_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)))))))))))))))) (forall ((V0v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2EF)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27d d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27f))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27f))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3e_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3e_2E0))) (let ((_let_3 (s A_27a))) (= (_let_1 (c_2Ecombin_2EI_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1abs_2E0)) (_let_3 (c_2Ecombin_2EI_2E1 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 ((s A_27a) V0v_2E0)) _let_1) _let_1))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V1f) (V1f V0m))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Elist_2Elist _let_2))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2EMAP_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EMAP_2E0)) _let_7))) _let_5)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 c_2Ebag_2EEMPTY__BAG_2E0) (_let_1 (c_2Ecombin_2EK_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1v_2E0 u) (V2rows_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V2rows_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 ((s A_27c) V1v_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 ((s (tyop_2Elist_2Elist _let_4)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((s A_27a) V0v_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V2r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) F0_2E0)) _let_1))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eoption_2EIS__SOME_2E1 ((s _let_2) ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((V0v_2E0 u) (V1rs_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1rs_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEXISTS_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) _let_3))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27d))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27d)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (= (_let_58 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Emin_2Ebool)) (_let_58 c_2Elist_2ESNOC_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v__old_2E0 u) (V1v__new_2E0 u) (V2rows__old_2E0 u) (V3rows__new_2E0 u) (V4r__old_2E0 u) (V5r__new_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V3rows__new_2E0))) (let ((_let_5 ((s _let_2) V5r__new_2E0))) (let ((_let_6 ((s A_27b) V1v__new_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH_2E2 _let_6))) (let ((_let_8 (s A_27c))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_10 (s (tyop_2Elist_2Elist _let_9)))) (let ((_let_11 (_let_10 V2rows__old_2E0))) (let ((_let_12 ((s _let_9) V4r__old_2E0))) (let ((_let_13 ((s A_27a) V0v__old_2E0))) (let ((_let_14 (c_2EpatternMatches_2EPMATCH_2E2 _let_13))) (let ((_let_15 (s _let_1))) (=> (= (_let_15 ((app_2E2 _let_12) _let_13)) (_let_15 ((app_2E2 _let_5) _let_6))) (=> (= (_let_8 (_let_14 _let_11)) (_let_8 (_let_7 _let_4))) (= (_let_8 (_let_14 (_let_10 ((c_2Elist_2ECONS_2E2 _let_12) _let_11)))) (_let_8 (_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))) (let ((_let_5 (_let_1 V0b1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 _let_5))) (let ((_let_7 (_let_1 (_let_6 _let_2)))) (let ((_let_8 (c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_6 _let_3))))) (let ((_let_9 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_5)))) (let ((_let_10 (c_2Ebag_2EBAG__DIFF_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_5))))) (and (= (_let_1 (_let_10 _let_7)) _let_4) (= (_let_1 (_let_10 _let_9)) _let_4) (= (_let_1 (_let_8 _let_9)) _let_4) (= (_let_1 (_let_8 _let_7)) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (s A_27b))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2ESORTS_2E2 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_4) _let_4))) c_2Esorting_2EQSORT_2E0)) _let_3)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b2_2E0))) (let ((_let_4 (_let_2 V1b1_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__EVERY_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 ((c_2Ebag_2EBAG__MERGE_2E2 _let_4) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V5g_27_2E0 u) (V3g_2E0 u) (V0f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V5g_27_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V3g_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_7) _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_9) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_12)) F0_2E0)) _let_5))) _let_10))) _let_8))) _let_1))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_10) ((s A_27b) ((app_2E2 _let_8) _let_1)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_1)))))))))))))))))) (forall ((V0f_2E0 u) (V1v_2E0 u) (V2p_2E0 u) (V3g_2E0 u) (V4p_27_2E0 u) (V5g_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V3g_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V5g_27_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 ((s A_27c) V1v_2E0)))) (let ((_let_12 (_let_11 ((s (_let_1 A_27c)) V4p_27_2E0)))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((_let_11 ((s (_let_3 A_27c)) V2p_2E0)) _let_5)))) (=> (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27c))) (= (_let_3 ((app_2E2 ((s (_let_2 A_27c)) V4p_27_2E0)) _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V2p_2E0)) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 (_let_12 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (_let_12 (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_8))) _let_5))) ((s _let_2) V0f_2E0))))))))))))))))))))))))) (forall ((F0 (-> Bool Bool))) (=> (forall ((V0x Bool)) (= (F0 V0x) (not V0x))) (= (mono_2Ec_2Eoption_2Esome_2Emono_2Etyop_2Emin_2Ebool F0) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (exists ((V2R_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V2R_2E0)) (_let_2 V0ll1_2E0)))) (_let_2 V1ll2_2E0)))) (forall ((V3ll3_2E0 u) (V4ll4_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Ellist_2ELNIL_2E0))) (let ((_let_4 (_let_2 V4ll4_2E0))) (let ((_let_5 (_let_2 V3ll3_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) V2R_2E0)) _let_5))) _let_4))) (or (exists ((V5h_2E0 u) (V6t1_2E0 u) (V7t2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t2_2E0))) (let ((_let_4 (_let_2 V6t1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (c_2Ellist_2ELCONS_2E2 ((s A_27a) V5h_2E0)))) (and (= (_let_2 V3ll3_2E0) (_let_2 (_let_7 _let_4))) (= (_let_2 V4ll4_2E0) (_let_2 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V2R_2E0)) _let_4))) _let_3)))))))))))) (and (= _let_5 _let_3) (= _let_4 _let_3)))))))))))))))))) (= (_let_1 V0ll1_2E0) (_let_1 V1ll2_2E0))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2p Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool V4i))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4i) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos)) (= (_let_1 (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_2)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0)) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V2p))) ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))))) (_let_1 V3infos)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (V0rows_2E0 u) (V1r_27_2E0 u) (V2r_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V0rows_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 ((s A_27a) V3i_2E0)))) (let ((_let_6 (_let_5 (_let_4 V2r_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1r_27_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_5 _let_8) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((c_2Elist_2ECONS_2E2 _let_8) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0r_2E0 u) (V1p_2E0 u) (V2i_2E0 u) (V3g_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (= (= (_let_1 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s (_let_2 A_27c)) V1p_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V3g_2E0)) ((s (_let_2 A_27a)) V0r_2E0)) ((s A_27c) V2i_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)) (forall ((V4x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_1 A_27c)) V1p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V3g_2E0)) ((s A_27c) V2i_2E0)) ((s A_27b) V4x_2E0))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (= (= _let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 _let_2))) mono_2Ec_2Enum_2E0)))))) (forall ((A_27a d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27e))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27e))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_13))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_10) _let_8) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_10))) _let_8))) _let_5))) _let_4)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1i_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V0r_2E0))) (let ((_let_4 ((s A_27a) V1i_2E0))) (let ((_let_5 (s _let_1))) (= (=> (not (= (_let_5 ((app_2E2 _let_3) _let_4)) (_let_5 c_2Eoption_2ENONE_2E0))) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_4) _let_3) ((s (tyop_2Elist_2Elist _let_2)) c_2Elist_2ENIL_2E0))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (forall ((V3is mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4x_2E0 u) (V5xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V5xs_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27c) V4x_2E0)))) (= (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) V3is)))) (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3is))) _let_2)))))))))) (forall ((V0is mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1x_2E0 u) (V2xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2xs_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) V0is)))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27b) V1x_2E0)) _let_2)))) (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0is))) _let_2))))))) (= (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))) _let_2)) _let_2))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V4r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V4r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_1))) (= (= (_let_7 ((app_2E2 _let_4) _let_5)) (_let_7 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2p Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1rows_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_7)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 _let_4) _let_3) (_let_6 (i_mono_2Etyop_2Emin_2Ebool V2p))) ((s _let_7) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos)))))) (and V2p (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) _let_3))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_2))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0n))) (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1v_2E0 u) (V2rows_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V2rows_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 ((s A_27c) V1v_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH_2E2 _let_6))) (let ((_let_8 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_6) _let_3))) (= (_let_8 ((app_2E2 _let_4) ((s A_27a) (_let_7 _let_3)))) (_let_8 (_let_7 ((s (tyop_2Elist_2Elist _let_5)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E1 _let_4))) _let_3))))))))))))))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (or ((mono_2Ec_2Estring_2Estring__lt V0s1) V1s2) (= V0s1 V1s2)) ((mono_2Ec_2Estring_2Estring__le V0s1) V1s2))) (forall ((F0 (-> Bool Bool))) (=> (forall ((V0x Bool)) (= (F0 V0x) V0x)) (= (mono_2Ec_2Eoption_2Esome_2Emono_2Etyop_2Emin_2Ebool F0) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1p1_2E0 u) (V2g1_2E0 u) (V3r1_2E0 u) (V4p2_2E0 u) (V5g2_2E0 u) (V6r2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27d))))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (and (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1p1_2E0)))) (let ((_let_5 (s A_27c))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V10x_27_2E0 u)) (= (exists ((V11x_2E0 u)) (let ((_let_1 ((s A_27a) V11x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27b))) (and (= (_let_3 V10x_27_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V0g_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V2g1_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V5g2_2E0)) ((s A_27b) V10x_27_2E0)))))) (forall ((V12x_2E0 u)) (let ((_let_1 ((s A_27a) V12x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27d))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V6r2_2E0)) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0g_2E0)) _let_1)))) (_let_3 ((app_2E2 ((s (_let_2 A_27d)) V3r1_2E0)) _let_1))))))) (forall ((V9x_2E0 u)) (let ((_let_1 ((s A_27a) V9x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27c))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V4p2_2E0)) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0g_2E0)) _let_1)))) (_let_3 ((app_2E2 ((s (_let_2 A_27c)) V1p1_2E0)) _let_1)))))))) (= (_let_2 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_3 A_27c)) V1p1_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) V2g1_2E0)) ((s (_let_3 A_27d)) V3r1_2E0))) (_let_2 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_1 A_27c)) V4p2_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V5g2_2E0)) ((s (_let_1 A_27d)) V6r2_2E0))))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 (_let_3 tyop_2Emin_2Ebool))) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (= (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_2)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EDELETE_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 ((s A_27a) V1e_2E0))) (let ((_let_3 (_let_1 V0b_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__IN_2E2 _let_2))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V1r_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V0f_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_5 (((c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E3 _let_4) _let_3) _let_1)) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) ((s _let_2) ((app_2E2 _let_3) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 ((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E2 _let_4) _let_3))) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 _let_4) _let_3) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows1_2E0 u) (V2rows2_2E0 u) (V3rows3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V3rows3_2E0))) (let ((_let_3 (c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 ((s A_27a) V0v_2E0)))) (let ((_let_4 (_let_3 (_let_1 V1rows1_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V2rows2_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_3 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E3 _let_8) _let_6) _let_4)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E0)) _let_8))) _let_6))) _let_4)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (= (_let_361 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_361 c_2Epair_2ESND_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2row_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) V2row_2E0))) (let ((_let_7 (s _let_4))) (let ((_let_8 (s _let_2))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) F1_2E0)) _let_6))) _let_1)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_1))) _let_1)))))))))))) (=> (forall ((V0p_2E0 u) (V1g_2E0 u) (V3v_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 ((s A_27c) V3v_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1g_2E0))) (let ((_let_7 (_let_3 A_27c))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0p_2E0 u) (V1g_2E0 u) (V2row_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V2row_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 ((s A_27c) V3v_2E0))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V1g_2E0))) (let ((_let_11 (_let_2 A_27c))) (let ((_let_12 ((s _let_11) V0p_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun A_27c) _let_8))) (let ((_let_14 ((tyop_2Emin_2Efun _let_8) _let_13))) (= (_let_6 ((((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E4 _let_12) _let_10) _let_5) _let_7)) (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27b)) (c_2Eoption_2Esome_2E1 (_let_9 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_14)) F0_2E0)) _let_12))) _let_10))) _let_7))))) (_let_6 c_2Eoption_2ENONE_2E0)) ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) F1_2E0)) _let_5))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ESNOC_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ESNOC_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_9 (_let_1 _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1v_2E0 u) (V2r_2E0 u) (V3rs_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V3rs_2E0))) (let ((_let_5 ((s A_27b) V1v_2E0))) (let ((_let_6 (c_2EpatternMatches_2EPMATCH_2E2 _let_5))) (let ((_let_7 (s A_27a))) (let ((_let_8 ((s _let_2) V2r_2E0))) (= (_let_7 (_let_6 (_let_3 ((c_2Elist_2ECONS_2E2 _let_8) _let_4)))) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_1) ((app_2E2 _let_8) _let_5))) (_let_7 (_let_6 _let_4))) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Ecombin_2EI_2E0))))))))))))) (forall ((V0v_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) c_2Elist_2ENIL_2E0))) (_let_1 c_2EpatternMatches_2EPMATCH__INCOMPLETE_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_1))) (= (= (_let_7 ((app_2E2 _let_4) _let_5)) (_let_7 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1rows_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_4) _let_3) (_let_6 ((c_2Elist_2EEVERY_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) _let_3))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E2 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27d))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27d) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Eone_2Eone V0) V1))) (_let_2 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rs_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s (tyop_2Elist_2Elist _let_4)) V1rs_2E0))) (let ((_let_6 ((s A_27a) V0v_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eoption_2EIS__SOME_2E1 ((s _let_3) ((app_2E2 ((s _let_4) ((c_2Elist_2EEL_2E2 _let_2) _let_5))) _let_6))))) (exists ((V3j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 ((s _let_2) ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3j))) ((s (tyop_2Elist_2Elist _let_2)) V1rs_2E0)))) ((s A_27a) V0v_2E0)))))) ((mono_2Ec_2Eprim__rec_2E_3C V3j) V2i)))))) ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 _let_6) _let_5) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3r_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27c) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V3r_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_2 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_1)) (_let_7 ((app_2E2 _let_6) ((s A_27a) ((app_2E2 _let_4) _let_1))))))))))))))) (forall ((V0f_2E0 u) (V1p_2E0 u) (V2g_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) V3r_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_1 A_27d)) V1p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2g_2E0)))) (let ((_let_9 (tyop_2Emin_2Efun A_27d))) (let ((_let_10 (s (_let_9 (tyop_2Eoption_2Eoption A_27b))))) (= (_let_10 ((c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E2 _let_5) ((s (_let_9 (tyop_2Eoption_2Eoption A_27a))) (_let_8 _let_3)))) (_let_10 (_let_8 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_3)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0r_2E0 u) (V1p_2E0 u) (V2i_2E0 u) (V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V3g_2E0))) (let ((_let_3 ((s (_let_1 A_27c)) V1p_2E0))) (let ((_let_4 ((s A_27c) V2i_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (= (not (= (_let_5 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_3) _let_2) ((s (_let_1 A_27a)) V0r_2E0)) _let_4)) (_let_5 c_2Eoption_2ENONE_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_4) _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V1b1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) _let_6) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V4g_2E0 u) (V2f_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27c) V12x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V4g_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) ((s A_27d) ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V5r_2E0 u) (V2f_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27c) V13x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) A_27e))) (let ((_let_6 ((s _let_5) V5r_2E0))) (let ((_let_7 (s A_27e))) (let ((_let_8 (_let_2 A_27e))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_6))) _let_4))) _let_1)) (_let_7 ((app_2E2 _let_6) ((s A_27d) ((app_2E2 _let_4) _let_1))))))))))))))) (forall ((V0v_2E0 u) (V1v_27_2E0 u) (V2f_2E0 u) (V3p_2E0 u) (V4g_2E0 u) (V5r_2E0 u) (V6p_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) V2f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27d))) (let ((_let_5 (_let_4 A_27e))) (let ((_let_6 ((s _let_5) V5r_2E0))) (let ((_let_7 (_let_1 A_27e))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_11 ((s _let_10) V4g_2E0))) (let ((_let_12 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_8 _let_12))) (let ((_let_14 (s (tyop_2Eoption_2Eoption A_27e)))) (=> (and (forall ((V7x_27_2E0 u)) (let ((_let_1 ((s A_27c) V7x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s A_27a))) (= (= (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V3p_2E0)) ((s A_27d) ((app_2E2 ((s (_let_2 A_27d)) V2f_2E0)) _let_1)))) (_let_4 V0v_2E0)) (= (_let_3 V1v_27_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V6p_27_2E0)) _let_1))))))))) (forall ((V10x_2E0 u) (V11y_2E0 u)) (let ((_let_1 (s A_27d))) (let ((_let_2 (_let_1 V11y_2E0))) (let ((_let_3 (_let_1 V10x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V3p_2E0)))) (let ((_let_5 (s A_27a))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V8x_2E0 u)) (let ((_let_1 (s A_27a))) (=> (= (_let_1 V0v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V3p_2E0)) ((s A_27d) V8x_2E0)))) (exists ((V9x_27_2E0 u)) (let ((_let_1 (s A_27d))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27d)) V2f_2E0)) ((s A_27c) V9x_27_2E0))) (_let_1 V8x_2E0)))))))) (= (_let_14 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s (_let_4 A_27a)) V3p_2E0)) _let_11) _let_6) ((s A_27a) V0v_2E0))) (_let_14 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s (_let_1 A_27b)) V6p_27_2E0)) ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_13)) F0_2E0)) _let_11))) _let_3))) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_6))) _let_3))) ((s A_27b) V1v_27_2E0))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27d)) A_27e))))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_360 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_360 c_2Epair_2EFST_2E0)) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u) (V4l_2E0 u) (V5t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V4l_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_4) _let_1))) (let ((_let_7 (s (tyop_2Eoption_2Eoption _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun A_27b))) (let ((_let_9 ((s (_let_8 _let_1)) V3e2_2E0))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 ((s (_let_10 _let_1)) V2e1_2E0))) (let ((_let_12 ((s (_let_8 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_13 (tyop_2Emin_2Efun _let_1))) (let ((_let_14 ((s (_let_10 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2EEncode_2Ewf__encoder_2E2 _let_14) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 (((c_2EEncode_2Elift__prod_2E3 _let_14) _let_12) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((c_2EEncode_2Ewf__encoder_2E2 _let_12) _let_9)))) (= (_let_7 ((((c_2EDecode_2Edecode__prod_2E4 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__prod_2E2 _let_14) _let_12))) ((s (_let_13 (tyop_2Eoption_2Eoption (_let_3 _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_14) _let_11))) ((s (_let_13 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_12) _let_9))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 (((c_2EEncode_2Eencode__prod_2E3 _let_11) _let_9) _let_5)))) V5t))))) (_let_7 (c_2Eoption_2ESOME_2E1 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5t)))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0pat_2E0 u) (V1guard_2E0 u) (V2inp_2E0 u) (V3v_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2inp_2E0))) (let ((_let_3 ((s A_27a) V3v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0pat_2E0))) (let ((_let_6 ((s (_let_4 tyop_2Emin_2Ebool)) V1guard_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_5) _let_6) _let_2) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) _let_3))) (= (_let_1 ((app_2E2 _let_5) _let_3)) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27c) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s _let_2) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E0)) _let_6))) _let_5))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4g_2E0 u) (V5r_2E0 u) (V3p_2E0 u) (V2rs2_2E0 u) (V9x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 ((s _let_1) V2rs2_2E0))) (let ((_let_3 ((s A_27c) V9x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V3p_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_4 A_27b))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V5r_2E0))) (let ((_let_11 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_12 ((s _let_11) V4g_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_14 ((tyop_2Emin_2Efun _let_5) _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_8) _let_14))) (= (_let_7 ((app_2E2 (_let_9 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_15)) F1_2E0)) _let_12))) _let_10))) _let_6))) _let_2))) _let_3)) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_12) _let_3))) (_let_7 ((app_2E2 _let_10) _let_3))) (_let_7 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) ((app_2E2 _let_6) _let_3))) _let_2))))))))))))))))))))) (=> (forall ((V8x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27c) V8x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0v_2E0 u) (V1rs1_2E0 u) (V2rs2_2E0 u) (V3p_2E0 u) (V4g_2E0 u) (V5r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2rs2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) V3p_2E0))) (let ((_let_8 (_let_5 A_27b))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V5r_2E0))) (let ((_let_11 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_12 V4g_2E0))) (let ((_let_14 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_15 ((tyop_2Emin_2Efun _let_6) _let_14))) (let ((_let_16 ((tyop_2Emin_2Efun _let_8) _let_15))) (let ((_let_17 (c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7))) (let ((_let_18 (s _let_1))) (let ((_let_19 (c_2Elist_2EAPPEND_2E2 (_let_3 V1rs1_2E0)))) (let ((_let_20 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) V0v_2E0)))) (let ((_let_21 (s A_27b))) (=> (forall ((V6x1_2E0 u) (V7x2_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V7x2_2E0))) (let ((_let_3 (_let_1 V6x1_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V3p_2E0)))) (let ((_let_5 (s A_27a))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (= (_let_21 (_let_20 (_let_3 (_let_19 (_let_3 ((c_2Elist_2ECONS_2E2 (_let_18 ((_let_17 _let_13) _let_10))) _let_4)))))) (_let_21 (_let_20 (_let_3 (_let_19 (_let_3 ((c_2Elist_2ECONS_2E2 (_let_18 ((_let_17 (_let_12 F0_2E0)) (_let_9 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_16)) F1_2E0)) _let_13))) _let_10))) _let_7))) _let_4))))) _let_4))))))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E2 ((s A_27a) V0v_2E0)) _let_1)))) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1)))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1r_2E0 u) (V2r_27_2E0 u) (V3rows_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (s _let_2))) (let ((_let_5 (_let_4 V2r_27_2E0))) (let ((_let_6 (_let_4 V1r_2E0))) (let ((_let_7 ((s A_27a) V0i_2E0))) (let ((_let_8 (s _let_1))) (let ((_let_9 (_let_8 ((app_2E2 _let_5) _let_7)))) (let ((_let_10 (_let_8 ((app_2E2 _let_6) _let_7)))) (let ((_let_11 (_let_8 c_2Eoption_2ENONE_2E0))) (=> (not (= _let_9 _let_11)) (= (=> (not (= _let_10 _let_11)) (= _let_10 _let_9)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_7) _let_6) (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) (_let_3 V3rows_2E0)))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V1rows_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((s A_27a) V0v_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 ((s _let_2) ((c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_4))) _let_6))))) ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_6) _let_4) (_let_3 ((c_2Elist_2ETAKE_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) _let_4)))))))))))))) (forall ((F0 (-> Bool Bool Bool))) (=> (forall ((V2i1 Bool) (V3i2 Bool)) (= ((F0 V2i1) V3i2) (and V3i2 V2i1))) (forall ((V0ip1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1ip2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__CONJ V0ip1) V1ip2) (((mono_2Ec_2Elist_2EMAP2_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool F0) V0ip1) V1ip2))))) (forall ((V0cs mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Estring_2EEXPLODE (mono_2Ec_2Estring_2EIMPLODE V0cs)) V0cs)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (= (_let_359 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_359 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 (_let_4 _let_3)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))))) (forall ((A_27a d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27e))) (let ((_let_3 (_let_2 A_27f))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27f))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((A_27a d) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4a_2E0 u) (V7ts_2E0 u) (V8t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V8t_27)))) (let ((_let_3 (tyop_2EEncode_2Etree A_27a))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) V7ts_2E0))) (let ((_let_6 ((s A_27a) V4a_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_11)) F3_2E0)) _let_6))) _let_5))) _let_2)) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_7) ((c_2Epair_2E_2C_2E2 ((s _let_3) ((c_2EEncode_2ENode_2E2 _let_6) _let_5))) _let_2))))))))))))))))) (=> (forall ((V4a_2E0 u) (V6v_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2EEncode_2Etree A_27a))) (let ((_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) _let_2)))) (let ((_let_5 (tyop_2Elist_2Elist _let_3))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) ((tyop_2Emin_2Efun _let_2) _let_4)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_5) _let_2))) (let ((_let_9 ((s _let_8) V6v_2E0))) (let ((_let_10 (s _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_4))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_7 _let_11)) F2_2E0)) _let_1))) _let_9)) (_let_10 ((c_2Epair_2Epair__CASE_2E2 _let_9) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F3_2E0)) _let_1))))))))))))))))) (=> (forall ((V0p_2E0 u) (V2d_2E0 u) (V4a_2E0 u) (V5t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2EEncode_2Etree A_27a))) (let ((_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) _let_2)))) (let ((_let_5 (tyop_2Elist_2Elist _let_3))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) _let_2))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_4))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (s _let_4))) (let ((_let_10 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5t)))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (_let_11 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_13 ((s _let_12) V2d_2E0))) (let ((_let_14 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_15 ((s _let_14) V0p_2E0))) (let ((_let_16 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__tree_2E1 _let_15)))) (let ((_let_17 (_let_11 _let_4))) (let ((_let_18 (s _let_17))) (let ((_let_19 (_let_8 _let_17))) (let ((_let_20 ((tyop_2Emin_2Efun _let_12) _let_19))) (= (_let_9 ((app_2E2 (_let_18 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_14) _let_20)) F1_2E0)) _let_15))) _let_13))) _let_1))) _let_10)) (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_6)) (((c_2EDecode_2Edecode__list_2E3 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_16))) (_let_18 ((c_2EDecode_2Edecode__tree_2E2 _let_16) _let_13))) _let_10))) (_let_9 c_2Eoption_2ENONE_2E0)) ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F2_2E0)) _let_1)))))))))))))))))))))))))) (=> (forall ((V0p_2E0 u) (V2d_2E0 u) (V3v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_5 ((s _let_4) V2d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) V0p_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2EEncode_2Etree A_27a)) _let_1)))) (let ((_let_10 (_let_6 (_let_3 _let_9)))) (let ((_let_11 (tyop_2Emin_2Efun _let_4))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (tyop_2Emin_2Efun _let_7))) (let ((_let_14 ((s _let_2) V3v1_2E0))) (let ((_let_15 (s _let_9))) (let ((_let_16 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_17 (_let_11 _let_16))) (= (_let_15 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_13 _let_17)) F0_2E0)) _let_8))) _let_5))) _let_14)) (_let_15 ((c_2Epair_2Epair__CASE_2E2 _let_14) ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_13 _let_12)) F1_2E0)) _let_8))) _let_5))))))))))))))))))))))) (forall ((V0p_2E0 u) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_5 ((s _let_4) V2d_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0p_2E0))) (let ((_let_8 (tyop_2EEncode_2Etree A_27a))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_8) _let_1)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s _let_9))) (let ((_let_13 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1l)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 _let_7) _let_5))) (= (_let_12 (((c_2EDecode_2Edecode__tree_2E3 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__tree_2E1 _let_7))) _let_5) _let_13)) (_let_12 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_3) ((app_2E2 _let_5) _let_13))) (_let_12 c_2Eoption_2ENONE_2E0)) ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_5))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4r_2E0 u) (V5i Bool) (V6c_27 Bool)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_6 (_let_5 V1rows_2E0))) (let ((_let_7 ((s _let_4) V4r_2E0))) (let ((_let_8 ((s A_27a) V0v_2E0))) (let ((_let_9 (c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_8))) (let ((_let_10 (s _let_3))) (let ((_let_11 (= (_let_10 ((app_2E2 _let_7) _let_8)) (_let_10 c_2Eoption_2ENONE_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((_let_9 _let_6) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V2c))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (=> (=> _let_11 (=> V2c V6c_27)) (=> (=> V2c (=> V5i _let_11)) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((_let_9 (_let_5 ((c_2Elist_2ESNOC_2E2 _let_7) _let_6))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V6c_27))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Emin_2Ebool V5i) V3infos))))))))))))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((F0 (-> Bool Bool Bool))) (=> (forall ((V3i1 Bool) (V2i2 Bool)) (= ((F0 V3i1) V2i2) (and V2i2 V3i1))) (forall ((V0is2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1is1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2i2 Bool) (V3i1 Bool)) (and (= ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__CONJ mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool) (= ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__CONJ ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V3i1) V1is1)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V2i2) V0is2)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool ((F0 V3i1) V2i2)) ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__CONJ V1is1) V0is2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1))) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (=> (forall ((V2q mono_2Etyop_2Enum_2Enum)) (= (F1 V2q) (= V2q mono_2Ec_2Enum_2E0))) (=> (forall ((V0p mono_2Etyop_2Enum_2Enum) (V2q mono_2Etyop_2Enum_2Enum) (V3r mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V3r))) (= (((F0 V0p) V2q) V3r) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (F1 V2q)) (_let_1 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) (_let_1 ((mono_2Ec_2Enumposrep_2En2l ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0p)) V2q)))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0p) (= ((mono_2Ec_2Enumposrep_2En2l ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0p)) V1n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (F0 V0p))) ((mono_2Ec_2Ebit_2EDIVMOD__2EXP V0p) V1n)))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0b_2E0 u) (V1a_2E0 u) (V2N_2E0 u) (V3M_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2N_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0b_2E0))) (let ((_let_5 (_let_1 V3M_2E0))) (let ((_let_6 (_let_3 V1a_2E0))) (= (or (and (= _let_6 _let_4) (= _let_5 _let_2)) (exists ((V4k_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V4k_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V3M_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 (_let_3 V0b_2E0)) _let_2))) (= (_let_1 V2N_2E0) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 (_let_3 V1a_2E0)) _let_2))))))))) (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_6) _let_5)) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_4) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (= mono_2Ec_2Enumposrep_2Enum__to__bin__list (mono_2Ec_2Enumposrep_2En2l _let_19)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= mono_2Ec_2Enumposrep_2El2n2 _let_350) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) V1p) ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Enum_2Enum V1p) (mono_2Ec_2EEncode_2Eencode__bnum V0m)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (=> (and ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) V1l) ((mono_2Ec_2Eprim__rec_2E_3C V0x) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V1l))) (= ((mono_2Ec_2Ebit_2EBIT V0x) (mono_2Ec_2Enumposrep_2Enum__from__bin__list V1l)) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0x) V1l) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (= ((mono_2Ec_2Earithmetic_2EDIV V1n) V0b) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b)) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0b))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1y_2E0))) (let ((_let_5 (_let_3 V0x_2E0))) (= (= _let_5 _let_4) (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_2)) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_4) _let_2)))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1ls mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Enumposrep_2El2n V0b))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0b) (= (_let_1 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) V1ls)) (_let_1 V1ls))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (= (_let_358 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool)) (_let_358 c_2Elist_2EAPPEND_2E0)) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0b) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) ((mono_2Ec_2Enumposrep_2En2l V0b) V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Ec_2Enumposrep_2Enum__from__oct__list) mono_2Ec_2Enumposrep_2Enum__to__oct__list) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (and (forall ((V2v6 mono_2Etyop_2Estring_2Echar) (V3v4 mono_2Etyop_2Estring_2Echar) (V4v5 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V0P ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2v6) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V3v4) V4v5)))) (V0P mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) (forall ((V1c mono_2Etyop_2Estring_2Echar)) (V0P ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V1c) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)))) (forall ((V5v mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V0P V5v)))) (forall ((A_27a d) (V0b_2E0 u) (V1c_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1c_2E0))) (let ((_let_3 (c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V2e_2E0)) _let_2))))))))))) (= (_let_226 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Enum_2Enum)) (_let_226 c_2Elist_2EEXISTS_2E0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (= (_let_357 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool)) (_let_357 c_2Ecombin_2EFAIL_2E0)) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1b) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Enumposrep_2El2n V1b) V0l)) ((mono_2Ec_2Earithmetic_2EEXP V1b) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V0l))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X2)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2EEncode_2Etree A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1)))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EDecode_2Edecode__tree_2E3 _let_8) _let_5) _let_2)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EDecode_2Edecode__tree_2E0)) _let_8))) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a2_2E0 u) (V3a3_2E0 u) (V4a0_27_2E0 u) (V5a1_27_2E0 u) (V6a2_27_2E0 u) (V7a3_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_2 V7a3_27_2E0))) (let ((_let_4 (_let_2 V3a3_2E0))) (let ((_let_5 (_let_2 V6a2_27_2E0))) (let ((_let_6 (_let_2 V2a2_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V5a1_27_2E0))) (let ((_let_9 (_let_7 V1a1_2E0))) (let ((_let_10 (_let_7 V4a0_27_2E0))) (let ((_let_11 (_let_7 V0a0_2E0))) (let ((_let_12 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (= (_let_12 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_11) _let_9) _let_6) _let_4)) (_let_12 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_10) _let_8) _let_5) _let_3))) (and (= _let_11 _let_10) (= _let_9 _let_8) (= _let_6 _let_5) (= _let_4 _let_3)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEL_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_1))))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s (_let_2 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ecombin_2EC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_3 ((c_2Ecombin_2EC_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2EDELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELAST_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELAST_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_3 (_let_2 c_2Eoption_2ENONE_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V0ll_2E0))) (let ((_let_6 (_let_2 (c_2Ellist_2ELTL_2E1 _let_5)))) (let ((_let_7 (= _let_5 (_let_4 c_2Ellist_2ELNIL_2E0)))) (and (= _let_7 (= _let_3 _let_6)) (= _let_7 (= _let_6 _let_3))))))))))) (= (_let_356 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (_let_356 c_2Ecombin_2Eo_2E0)) (= (_let_355 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_355 c_2Ebool_2ECOND_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2Eprim__rec_2E_3C V1b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1b)) ((F0 V0n) V1b))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumposrep_2En2l V1b))) (let ((_let_2 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2EMOD V0n) V1b)))) (= (_let_1 V0n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((F0 V0n) V1b)) (_let_2 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) (_let_2 (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V0n) V1b)))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V2))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E0)) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0A_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_4))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V0A_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0A_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_5 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_5 _let_9)) F0_2E0)) _let_3))) _let_4)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F1_2E0)) _let_4))) _let_3))))))))))))))) (forall ((V0A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0A_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_2))))))))))))))))) (= mono_2Ec_2Enumposrep_2Enum__from__oct__list (mono_2Ec_2Enumposrep_2El2n _let_35)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (= ((mono_2Ec_2Enumposrep_2El2n V0b) ((mono_2Ec_2Enumposrep_2En2l V0b) V1n)) V1n))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Etransitive_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELTL__HD_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELTL__HD_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 _let_7) _let_3)) (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E0)) _let_7))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2y mono_2Etyop_2Enum_2Enum)) (= (F0 V2y) (not (= mono_2Ec_2Enum_2E0 V2y)))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (=> (and ((mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Enum_2Enum F0) V1l) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) V1l) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b)) (= ((mono_2Ec_2Elogroot_2ELOG V0b) ((mono_2Ec_2Enumposrep_2El2n V0b) V1l)) (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EdropWhile_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum V1l))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Estring_2Echar))) (= (_let_2 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (= (_let_353 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum)) (_let_353 c_2Ecombin_2Eo_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 V1b_2E0))) (=> (= (_let_4 (c_2Ebag_2EEL__BAG_2E1 _let_3)) (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) _let_5))) (and (= _let_5 (_let_4 c_2Ebag_2EEMPTY__BAG_2E0)) (= _let_3 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1B_2E0 u)) (=> (exists ((V2w_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)) ((s A_27a) V2w_2E0))))) (exists ((V3min_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)) ((s A_27a) V3min_2E0)))) (forall ((V4b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V3min_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1B_2E0)) _let_2)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (= mono_2Ec_2Enumposrep_2Enum__to__hex__list (mono_2Ec_2Enumposrep_2En2l _let_241)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 _let_2)) (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 _let_2)) ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (F0 V1n))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0b) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Enumposrep_2En2l V0b) V1n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V1n)) _let_1) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Elogroot_2ELOG V0b) V1n))))))))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Ec_2Enumposrep_2Enum__from__bin__list) mono_2Ec_2Enumposrep_2Enum__to__bin__list) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (= (_let_122 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2ETAKE_2Emono_2Etyop_2Enum_2Enum)) (_let_122 c_2Elist_2ETAKE_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (= (_let_352 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (_let_352 c_2Epair_2EUNCURRY_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EreaderMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EreaderMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0b_2E0 u) (V1f_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (let ((_let_4 ((s (_let_1 A_27b)) V1f_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__IMAGE_2E2 _let_4))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_7 ((s A_27a) V2e_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (= (_let_6 (_let_5 (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 _let_7) _let_3)))) (_let_6 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27b) ((app_2E2 _let_4) _let_7))) (_let_6 (_let_5 _let_3)))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (= (_let_149 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum)) (_let_149 c_2Ebag_2EFINITE__BAG_2E0)) (= mono_2Ec_2Enumposrep_2Enum__from__dec__list (mono_2Ec_2Enumposrep_2El2n _let_197)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Eencode__blist_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6)) c_2EEncode_2Eencode__blist_2E0)) _let_4))) _let_3))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumposrep_2Enum__to__bin__list V1n))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum _let_1)) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0x) _let_1) ((mono_2Ec_2Ebit_2EBITV V1n) V0x))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (= (_let_351 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EdropWhile_2Emono_2Etyop_2Enum_2Enum)) (_let_351 c_2Elist_2EdropWhile_2E0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EEncode_2Elift__prod_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EEncode_2Elift__prod_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (and (forall ((V0t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) V0t))) (= ((mono_2Ec_2Enumposrep_2El2n (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumposrep_2El2n2 _let_1))))) (forall ((V1t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1t))) (= ((mono_2Ec_2Enumposrep_2El2n (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumposrep_2El2n2 _let_1))))) (= (mono_2Ec_2Enumposrep_2El2n2 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Earithmetic_2EZERO) (forall ((V3t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Enumposrep_2El2n2 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V3t)) (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Enumposrep_2El2n2 V3t)))) (forall ((V2t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Enumposrep_2El2n2 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) V2t)) (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Enumposrep_2El2n2 V2t))))) (and (forall ((V0b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumposrep_2El2n V0b) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0)) (forall ((V1b mono_2Etyop_2Enum_2Enum) (V2h mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Enumposrep_2El2n V1b))) (= (_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V2h) V3t)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EMOD V2h) V1b)) ((mono_2Ec_2Earithmetic_2E_2A V1b) (_let_1 V3t))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EdropWhile_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EdropWhile_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0P V1b))) (=> (=> (not (or ((mono_2Ec_2Eprim__rec_2E_3C V1b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1b))) (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V2n) V1b))) (_let_1 V2n)))) (forall ((V3v mono_2Etyop_2Enum_2Enum) (V4v1 mono_2Etyop_2Enum_2Enum)) ((V0P V3v) V4v1)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ETAKE_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (= mono_2Ec_2Enumposrep_2Enum__from__hex__list (mono_2Ec_2Enumposrep_2El2n _let_241)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 _let_1))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0)))) (forall ((V1H_2E0 u)) (=> (forall ((V2f_2E0 u) (V3g_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)))) (let ((_let_5 (s A_27b))) (=> (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V0_3C_3C_2E0)) _let_2))) (_let_1 V4x_2E0)))) (= (_let_5 ((app_2E2 (_let_4 V2f_2E0)) _let_2)) (_let_5 ((app_2E2 (_let_4 V3g_2E0)) _let_2))))))))))) (= (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V2f_2E0)))) _let_1)) (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V3g_2E0)))) _let_1)))))))))) (forall ((V6f_2E0 u) (V7g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (and (forall ((V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V6f_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1))))))))) (forall ((V9x_2E0 u)) (let ((_let_1 ((s A_27a) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7g_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1)))))))))) (= (_let_1 V6f_2E0) (_let_1 V7g_2E0)))))))))) (= mono_2Ec_2Enumposrep_2Enum__from__bin__list _let_350) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecardinal_2Elist_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecardinal_2Elist_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Ec_2Enumposrep_2Enum__from__dec__list) mono_2Ec_2Enumposrep_2Enum__to__dec__list) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2EFINITE__BAG_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) A_27b))))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_1 V1l1_2E0))) (=> (= _let_5 _let_2) (=> (forall ((V4x_2E0 u) (V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s A_27b))) (let ((_let_9 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))) (=> (= _let_2 (_let_1 ((c_2Elist_2EEL_2E2 _let_4) _let_9))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V5n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_9)))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3f1_2E0)) _let_4))) _let_2)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2f2_2E0)) _let_4))) _let_2))))))))))))))) (= (_let_4 ((c_2EindexedLists_2EMAPi_2E2 (_let_3 V3f1_2E0)) _let_5)) (_let_4 ((c_2EindexedLists_2EMAPi_2E2 (_let_3 V2f2_2E0)) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_3 A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 A_27a))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2EC_2E2 _let_6) _let_2)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EindexedLists_2EMAPi_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EindexedLists_2EMAPi_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2EindexedLists_2EMAP2i_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2EindexedLists_2EMAP2i_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2b1_2E0 u) (V3b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V3b2_2E0))) (let ((_let_3 (_let_1 V2b1_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1y_2E0))) (let ((_let_6 (_let_4 V0x_2E0))) (let ((_let_7 (= _let_6 _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_6) _let_3))) _let_5) _let_2))) (or (and (not _let_7) (exists ((V4b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V2b1_2E0)) ((s A_27a) V1y_2E0)) (_let_1 V4b3_2E0))))))) (and _let_7 (= _let_3 _let_2)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Enum_2ESUC V1m)) (or (exists ((V2n0 mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V2n0) V1m) (= V0n (mono_2Ec_2Enum_2ESUC V2n0)))) (= V0n mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (=> (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))) V1Q) (forall ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))) V1Q)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) (_let_5 A_27b))))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EindexedLists_2EFOLDRi_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1a0_2E0 u) (V2a1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2a1_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1a0_2E0))) (= (or (and (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (= _let_4 (_let_3 c_2Elist_2ENIL_2E0))) (exists ((V3h1_2E0 u) (V4h2_2E0 u) (V5l1_2E0 u) (V6l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s A_27b) V4h2_2E0))) (let ((_let_3 (_let_1 V6l2_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V5l1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) V0R_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((s A_27a) V3h1_2E0))) (and (= (_let_4 V1a0_2E0) (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_5) (_let_4 ((c_2Elist_2ECONS_2E2 _let_10) (_let_4 c_2Elist_2ENIL_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 _let_8) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_5))))) _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EindexedLists_2ELIST__RELi_2E3 _let_8) _let_5) _let_3))) (= (_let_1 V2a1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0R_2E0)) _let_4) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Efcp_2Ebit1 A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2EBIT1A_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Efcp_2EBIT1A_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) (_let_5 A_27a))))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EindexedLists_2EFOLDRi_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27a))))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)))) (forall ((V1h1_2E0 u) (V2h2_2E0 u) (V3l1_2E0 u) (V4l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s A_27b) V2h2_2E0))) (let ((_let_3 (_let_1 V4l2_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 ((s A_27a) V1h1_2E0))) (let ((_let_6 (_let_4 V3l1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) V0R_2E0))) (let ((_let_10 (c_2EindexedLists_2ELIST__RELi_2E3 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 _let_9) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_6))))) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_6) (_let_4 ((c_2Elist_2ECONS_2E2 _let_5) (_let_4 c_2Elist_2ENIL_2E0)))))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4f_2E0 u) (V5g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V5g_2E0))) (let ((_let_4 (_let_2 V4f_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_1 _let_5)) V0R1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 ((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_6) ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) V3R2_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_2 ((c_2Ebool_2ERES__ABSTRACT_2E2 ((s _let_5) (c_2Equotient_2Erespects_2E1 _let_6))) _let_4))) _let_3))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EindexedLists_2EfupdLast_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EindexedLists_2EfupdLast_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Epair_2Epair__CASE_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2Epair__CASE_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_4 (c_2Elist_2EEL_2E2 _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) V0f_2E0))) (let ((_let_7 (s A_27b))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (= (_let_7 (_let_4 ((s (tyop_2Elist_2Elist A_27b)) ((c_2EindexedLists_2EMAPi_2E2 _let_6) _let_1)))) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) ((s A_27a) (_let_4 _let_1)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X2_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (_let_7 _let_11))) (= (_let_4 ((((c_2EindexedLists_2EMAPi__ACC_2E4 _let_9) _let_6) _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2EindexedLists_2EMAPi__ACC_2E0)) _let_9))) _let_6))) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V3f_2E0 u) (V4i mono_2Etyop_2Enum_2Enum) (V5a_2E0 u) (V6h_2E0 u) (V7t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V7t_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V5a_2E0))) (let ((_let_5 ((s A_27b) V6h_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 (i_mono_2Etyop_2Enum_2Enum V4i)))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_9 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) V3f_2E0))) (let ((_let_10 (c_2EindexedLists_2EMAPi__ACC_2E4 _let_9))) (= (_let_3 (((_let_10 _let_7) _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_2)))) (_let_3 (((_let_10 (_let_6 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V4i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 ((s _let_8) ((app_2E2 _let_9) _let_7))) _let_5))) _let_4))) _let_2)))))))))))))) (forall ((V0f_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2a_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2a_2E0))) (= (_let_1 ((((c_2EindexedLists_2EMAPi__ACC_2E4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i))) _let_2) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_4 (c_2Elist_2EEL_2E2 _let_3))) (let ((_let_5 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) V0f_2E0))) (let ((_let_9 (s A_27c))) (let ((_let_10 (mono_2Ec_2Eprim__rec_2E_3C V3n))) (=> (and (_let_10 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (_let_10 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_5))))) (= (_let_9 (_let_4 ((s (tyop_2Elist_2Elist A_27c)) (((c_2EindexedLists_2EMAP2i_2E3 _let_8) _let_5) _let_1)))) (_let_9 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_3))) ((s A_27a) (_let_4 _let_5))))) ((s A_27b) (_let_4 _let_1))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum)) (= (= V1i mono_2Ec_2Enum_2E0) (F0 V1i))) (and (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)))) (= (_let_1 ((c_2EindexedLists_2EdelN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1i))) (_let_1 (_let_4 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1i)))) _let_2) (_let_1 (_let_4 (_let_1 ((c_2EindexedLists_2EdelN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))))))) (forall ((V0i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2EindexedLists_2EdelN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0i))) _let_2)) _let_2))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1p_2E0 u) (V2e_2E0 u) (V3l_2E0 u) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V3l_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s (_let_7 _let_1)) V2e_2E0))) (let ((_let_9 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m)))) (let ((_let_10 ((s (_let_7 tyop_2Emin_2Ebool)) V1p_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2EEncode_2Elift__blist_2E3 _let_9) _let_10) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2EEncode_2Ewf__encoder_2E2 _let_10) _let_8)))) (= (_let_6 ((((c_2EDecode_2Edecode__blist_2E4 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__blist_2E2 _let_9) _let_10))) _let_9) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_10) _let_8))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 (((c_2EEncode_2Eencode__blist_2E3 _let_9) _let_8) _let_4)))) V4t))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4t)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2ELAST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2ELAST_2E0)) _let_2))))))) (forall ((A_27a d) (V0l_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1i))))) (let ((_let_5 (s A_27a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2j) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) ((mono_2Ec_2Eprim__rec_2E_3C V1i) V2j)) (= (_let_5 (_let_4 (_let_1 ((c_2EindexedLists_2EdelN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2j))) _let_2)))) (_let_5 (_let_4 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Elist_2Elist A_27a))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (_let_6 _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EindexedLists_2EMAP2ia_2E4 _let_8) _let_5) _let_4) _let_2)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EindexedLists_2EMAP2ia_2E0)) _let_8))) _let_5))) _let_4))) _let_2))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1f_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 (s (_let_3 _let_4)))) (let ((_let_6 (_let_5 V1f_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_8 ((s A_27b) V2h_2E0))) (= (_let_7 ((c_2EindexedLists_2EMAPi_2E2 _let_6) (_let_1 ((c_2Elist_2ECONS_2E2 _let_8) _let_2)))) (_let_7 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 ((s _let_4) ((app_2E2 _let_6) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) _let_8))) (_let_7 ((c_2EindexedLists_2EMAPi_2E2 (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) ((s (_let_3 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) _let_2)))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2EindexedLists_2EMAPi_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2EindexedLists_2Efindi_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2EindexedLists_2Efindi_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u) (V4a2_2E0 u) (V5a1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V4a2_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b)))))) (let ((_let_6 (_let_1 V1l1_2E0))) (let ((_let_7 (_let_3 V5a1_2E0))) (=> (= _let_6 _let_2) (=> (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7e_2E0 u) (V8a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V8a_2E0))) (let ((_let_3 ((s A_27a) V7e_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s _let_6))) (let ((_let_12 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V6n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_12)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_7 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_12))))) (= (_let_1 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V3f1_2E0)) _let_5))) _let_3))) _let_2)) (_let_1 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V2f2_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))) (=> (= _let_7 _let_4) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_5 V3f1_2E0)) _let_7) _let_6)) (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_5 V2f2_2E0)) _let_4) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27c)) (((c_2EindexedLists_2EMAP2i_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) V0f_2E0)) _let_3) _let_1))))) ((mono_2Ec_2Earithmetic_2EMIN (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f2_2E0 u) (V2f1_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (=> (forall ((V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3m)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3m) V0n) (= (_let_3 ((app_2E2 (_let_2 V2f1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f2_2E0)) _let_1)))))))) (= (_let_3 ((c_2Elist_2EGENLIST_2E2 (_let_2 V2f1_2E0)) _let_1)) (_let_3 ((c_2Elist_2EGENLIST_2E2 (_let_2 V1f2_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (((c_2EindexedLists_2EMAP2i_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V0l1_2E0)) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l_2E0))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) A_27a))) V1f_2E0))) (= (_let_2 ((c_2EindexedLists_2EMAPi_2E2 _let_3) _let_1)) (_let_2 ((((c_2EindexedLists_2EMAPi__ACC_2E4 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_2 c_2Elist_2ENIL_2E0)) _let_1))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (= _let_3 _let_2))) (let ((_let_5 (_let_1 ((c_2EindexedLists_2EfupdLast_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) _let_3)))) (and (= _let_4 (= _let_5 _let_2)) (= (= _let_2 _let_5) _let_4)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V0a) V1b) V2t0) (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V4t) V2t0) ((mono_2Ec_2Earithmetic_2E_3C_3D V3delta) V4t)) (not (V1b V4t)))) (V0a V3delta) ((mono_2Ec_2Earithmetic_2E_3C_3D V3delta) V2t0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F7 V1a) V4t) (not (V1a V4t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= ((F5 V0b) V15t) (not (V0b V15t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V13t) (not (V1a V13t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V8t)) ((F2 V0b) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (or (V1a V16t) (V0b V16t)) (((F9 V1a) V0b) V16t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (((F6 V1a) V0b) V18t) (or (V1a V18t) (V0b V18t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V9t) (V0b V9t)) (((F8 V1a) V0b) V9t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V11t) (V0b V11t)) (((F3 V1a) V0b) V11t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (((mono_2Ec_2ETemporal__Logic_2EWHEN F0) (F7 V1a)) V2x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V5x) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN F1) V1a) V5x)))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V10x) (((mono_2Ec_2ETemporal__Logic_2EWHEN V0b) ((F3 V1a) V0b)) V10x))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V17x) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN V0b) ((F6 V1a) V0b)) V17x)))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V14x) (((mono_2Ec_2ETemporal__Logic_2EWHEN (F5 V0b)) ((F9 V1a) V0b)) V14x))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V12x) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN (F4 V1a)) V0b) V12x)))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V7x) (not (((mono_2Ec_2ETemporal__Logic_2EWHEN (F2 V0b)) ((F8 V1a) V0b)) V7x))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u) (V2x_27_27_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0x_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1x_27_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V2x_27_27_2E0)))) (forall ((V3LIST__RELi_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (forall ((V4a0_2E0 u) (V5a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5a1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V4a0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (or (and (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (= _let_6 (_let_5 c_2Elist_2ENIL_2E0))) (exists ((V6h1_2E0 u) (V7h2_2E0 u) (V8l1_2E0 u) (V9l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V6h1_2E0))) (let ((_let_4 (_let_2 V8l1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27b) V7h2_2E0))) (let ((_let_8 (_let_6 V9l2_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_12)) V3LIST__RELi_27_2E0)) _let_4))) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10)) V0x_2E0)) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))))) _let_3))) _let_7))) (= (_let_6 V5a1_2E0) (_let_6 ((c_2Elist_2EAPPEND_2E2 _let_8) (_let_6 ((c_2Elist_2ECONS_2E2 _let_7) (_let_6 c_2Elist_2ENIL_2E0)))))) (= (_let_2 V4a0_2E0) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_2 ((c_2Elist_2ECONS_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0))))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) V3LIST__RELi_27_2E0)) _let_6))) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V3LIST__RELi_27_2E0)) ((s _let_2) V1x_27_2E0)))) ((s _let_1) V2x_27_27_2E0))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0m2_2E0 u) (V1m1_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0m2_2E0))) (let ((_let_3 (_let_1 V2l2_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V1m1_2E0))) (let ((_let_6 (_let_4 V3l1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (s (_let_7 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))))) (let ((_let_9 (_let_8 V4R_2E0))) (let ((_let_10 (c_2EindexedLists_2ELIST__RELi_2E3 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2EindexedLists_2ELIST__RELi_2E3 (_let_8 ((c_2Ecombin_2Eo_2E2 _let_9) ((s (_let_7 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_6))))))))) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V2f_2E0 u) (V3a_2E0 u) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V5t_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3a_2E0))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_6))) (let ((_let_8 (s (_let_5 _let_7)))) (let ((_let_9 (_let_8 V2f_2E0))) (let ((_let_10 ((s A_27b) V4h_2E0))) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 _let_9) _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 _let_10) _let_2)))) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 _let_9) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) _let_10))) (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_8 ((c_2Ecombin_2Eo_2E2 _let_9) ((s (_let_5 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) _let_4) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a_2E0))) (= (_let_1 (((c_2EindexedLists_2EFOLDRi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27a)))) V0f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0))) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2a_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V2a_2E0))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (s (_let_6 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b)))))) (let ((_let_8 (_let_7 V3f_2E0))) (let ((_let_9 (c_2EindexedLists_2EFOLDRi_2E3 _let_8))) (= (_let_4 ((_let_9 _let_5) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) (_let_4 ((_let_9 (_let_4 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_7 ((c_2Ecombin_2Eo_2E2 _let_8) ((s (_let_6 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) _let_5) _let_3))) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EFRONT_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EFRONT_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (=> (and (forall ((V6f_2E0 u) (V7h1_2E0 u) (V8t1_2E0 u) (V9h2_2E0 u) (V10t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V10t2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V8t1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V6f_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (let ((_let_13 (app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) V0P_2E0)))) (let ((_let_14 (s _let_12))) (let ((_let_15 (s _let_11))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 (_let_13 (_let_9 ((c_2Ecombin_2Eo_2E2 _let_10) ((s (_let_7 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))))) _let_6))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 (_let_13 _let_10))) (_let_5 ((c_2Elist_2ECONS_2E2 ((s A_27b) V7h1_2E0)) _let_6))))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27c) V9h2_2E0)) _let_3))))))))))))))))))))))) (forall ((V3f_2E0 u) (V4v5_2E0 u) (V5v6_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) V0P_2E0)) ((s _let_4) V3f_2E0)))) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27b) V4v5_2E0)) (_let_3 V5v6_2E0)))))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))))) (forall ((V1f_2E0 u) (V2v0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V0P_2E0)) ((s _let_3) V1f_2E0)))) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) V2v0_2E0))))))))))) (forall ((V11v_2E0 u) (V12v1_2E0 u) (V13v2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V0P_2E0)) ((s _let_3) V11v_2E0)))) ((s _let_2) V12v1_2E0)))) ((s _let_1) V13v2_2E0)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2EindexedLists_2EMAP2i_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2EindexedLists_2EMAP2i_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V2t)) ((F0 V0b) V2t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V3t) (V1a V3t)) (((F1 V1a) V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EWHEN (F0 V0b)) ((F1 V1a) V0b))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0v0_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (((c_2EindexedLists_2EMAP2i_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27c)) V0v0_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V2v6_2E0 u) (V3v5_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_1 (((c_2EindexedLists_2EMAP2i_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V4f_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27b) V3v5_2E0)) (_let_2 V2v6_2E0)))) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V5t2_2E0 u) (V6t1_2E0 u) (V7h2_2E0 u) (V8h1_2E0 u) (V9f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V5t2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V6t1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_6))) (let ((_let_8 (s (_let_5 _let_7)))) (let ((_let_9 (_let_8 V9f_2E0))) (let ((_let_10 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_11 ((s A_27c) V7h2_2E0))) (let ((_let_12 ((s A_27b) V8h1_2E0))) (= (_let_10 (((c_2EindexedLists_2EMAP2i_2E3 _let_9) (_let_3 ((c_2Elist_2ECONS_2E2 _let_12) _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_11) _let_2)))) (_let_10 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 _let_9) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) _let_12))) _let_11))) (_let_10 (((c_2EindexedLists_2EMAP2i_2E3 (_let_8 ((c_2Ecombin_2Eo_2E2 _let_9) ((s (_let_5 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) _let_4) _let_2)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 _let_1))) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 ((c_2EindexedLists_2Efindi_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_1))) _let_1))) V1n))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EindexedLists_2EdelN_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2EindexedLists_2EdelN_2E0)) _let_4))) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (=> (= (_let_6 (_let_5 _let_4)) (_let_6 (_let_5 _let_3))) (= _let_4 _let_3))))))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))))) (forall ((A_27a d) (V0sort_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_4) _let_4))) V0sort_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (forall ((V2p_2E0 u)) (=> (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 (_let_6 V2p_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V1r_2E0)) _let_3))) _let_2))))))))))))) (forall ((V5l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_8 (c_2Elist_2EFILTER_2E2 ((s _let_5) V2p_2E0)))) (= (_let_2 (_let_8 _let_3)) (_let_2 (_let_8 (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_7)) V0sort_2E0)) ((s _let_6) V1r_2E0)))) _let_3)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2ESORTS_2E2 _let_5) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2ESTABLE_2E2 _let_5) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_5 ((c_2Ellist_2ELGENLIST_2E2 _let_4) _let_1)) (_let_5 ((c_2Ellist_2ELAPPEND_2E2 (_let_5 (c_2Ellist_2EfromList_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))))) (_let_5 ((c_2Ellist_2ELGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B V0n)))))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0l_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V1i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V2j) V1i)) (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1i))) (_let_1 ((c_2EindexedLists_2EdelN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2j))) _let_2)))) (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2a_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V3l_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V2a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 ((s (_let_6 _let_5)) V1g_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_9 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) V0f_2E0))) (let ((_let_10 (_let_4 _let_8))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 _let_9) _let_3) ((s (tyop_2Elist_2Elist A_27a)) ((c_2EindexedLists_2EMAPi_2E2 _let_7) _let_1)))) (_let_2 (((c_2EindexedLists_2EFOLDRi_2E3 ((s (_let_6 _let_10)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) (c_2Ecombin_2Eo_2E1 _let_9))) _let_7))) _let_3) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1f_2E0)))) mono_2Ec_2Ebool_2ET))) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Efcp_2Ecart A_27a) A_27b)) _let_1)) V0rep_2E0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EindexedLists_2EMAPi_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EindexedLists_2EMAPi_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (forall ((V1f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V0P_2E0)) ((s _let_2) V1f_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0)))))))) (forall ((V4f_2E0 u) (V5h_2E0 u) (V6v4_2E0 u) (V7v5_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_3 V6v4_2E0)) (_let_2 V7v5_2E0))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_6)) V0P_2E0)) ((s _let_5) V4f_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_3 V5h_2E0)) _let_4))))))))))))))) (forall ((V2f_2E0 u) (V3h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V2f_2E0)))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) (_let_2 c_2Elist_2ENIL_2E0)))))))))))) (forall ((V8v_2E0 u) (V9v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V0P_2E0)) ((s _let_2) V8v_2E0)))) ((s _let_1) V9v1_2E0)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V2m mono_2Etyop_2Enum_2Enum)) (and (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3n) V2m) (not (V0P V3n)))) (V0P V2m))) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2f_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V1l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))))) (let ((_let_4 (_let_3 V2f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_5 V3a_2E0))) (= (_let_5 ((((c_2EindexedLists_2EMAPi__ACC_2E4 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_6) _let_1)) (_let_5 ((c_2Elist_2EAPPEND_2E2 (_let_5 (c_2Elist_2EREVERSE_2E1 _let_6))) (_let_5 ((c_2EindexedLists_2EMAPi_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B V0n)))))) _let_1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2h_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2h_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (and (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2EindexedLists_2Efindi_2E2 ((s A_27a) V0x_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V1x_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (c_2EindexedLists_2Efindi_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_3 V2h_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) F0_2E0)) _let_4))) _let_7)))) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) _let_3)))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (let ((_let_1 (s ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Esum_2EINR_2E1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EASCIInumbers_2Enum__to__bin__string V1n))) (let ((_let_2 (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar _let_1))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) _let_2) (= (mono_2Ec_2Estring_2ESUB ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum _let_1) V0x)) (mono_2Ec_2EASCIInumbers_2EHEX ((mono_2Ec_2Ebit_2EBITV V1n) (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_2) V0x))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V3t) (V0b V3t)) (((F0 V1a) V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V0b) ((F0 V1a) V0b)) V2x)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_349 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (_let_349 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Enum_2Enum)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 _let_4))) _let_4)))))) (= (_let_347 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (_let_347 c_2Elist_2ENIL_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_4 (_let_4 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_3) _let_3)))) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1P) V0Q) V3t) (or (V0Q V3t) (V1P V3t)))) (forall ((V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V0Q) V2x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1P) V2x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V1P) V0Q)) V2x))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0P (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (=> (and (forall ((V11v (-> mono_2Etyop_2Enum_2Enum Bool)) (V12n mono_2Etyop_2Enum_2Enum) (V13conn (-> Bool Bool Bool)) (V14a Bool) (V15j mono_2Etyop_2Enum_2Enum)) (((V0P V11v) V12n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V13conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V14a)) (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V15j))))) (forall ((V16v (-> mono_2Etyop_2Enum_2Enum Bool)) (V17n mono_2Etyop_2Enum_2Enum) (V18conn (-> Bool Bool Bool)) (V19a Bool) (V20b Bool)) (((V0P V16v) V17n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V18conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V19a)) (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V20b))))) (forall ((V6v (-> mono_2Etyop_2Enum_2Enum Bool)) (V7n mono_2Etyop_2Enum_2Enum) (V8conn (-> Bool Bool Bool)) (V9i mono_2Etyop_2Enum_2Enum) (V10b Bool)) (((V0P V6v) V7n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V8conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V9i)) (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V10b))))) (forall ((V1v (-> mono_2Etyop_2Enum_2Enum Bool)) (V2n mono_2Etyop_2Enum_2Enum) (V3conn (-> Bool Bool Bool)) (V4i mono_2Etyop_2Enum_2Enum) (V5j mono_2Etyop_2Enum_2Enum)) (((V0P V1v) V2n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V3conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V4i)) (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V5j)))))) (forall ((V21v (-> mono_2Etyop_2Enum_2Enum Bool)) (V22v1 mono_2Etyop_2Enum_2Enum) (V23v2 (-> Bool Bool Bool)) (V24v3 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) (V25v4 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (((V0P V21v) V22v1) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V23v2) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V24v3) V25v4)))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EPOW_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Epred__set_2EPOW_2E0)) _let_2))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Esum_2EINL_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERTC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERTC_2E0)) _let_4)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2ESORTS_2E2 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_4) _let_4))) c_2Esorting_2EQSORT3_2E0)) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (= (_let_346 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_346 c_2Ecombin_2Eo_2E0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod (_let_3 (_let_3 tyop_2Emin_2Ebool))) _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 (mono_2Ec_2EdefCNF_2EOKDEF V0n))) (= (_let_1 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1x) V2l)) (and ((mono_2Ec_2EdefCNF_2EOK ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V2l))) V1x) (_let_1 V2l))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_2 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Erich__list_2EREPLICATE_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Erich__list_2EREPLICATE_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod _let_4) _let_2)))))) (let ((_let_6 (_let_5 V0_2E0))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 _let_6))) _let_6)))))))) (= (_let_344 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool)) (_let_344 c_2Esum_2EINR_2E0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_4) _let_4))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod (_let_3 (_let_3 tyop_2Emin_2Ebool))) _let_2))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_4) _let_4))))) (let ((_let_6 (_let_5 V0_2E0))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 _let_6))) _let_6)))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u) (V2b_2E0 u) (V3a_2E0 u) (V4CD_2E0 u) (V5AB_2E0 u)) (let ((_let_1 ((s A_27b) V2b_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 A_27d)) V0g_2E0))) (let ((_let_4 ((s A_27a) V3a_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 A_27c)) V1f_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27c) _let_7)) V4CD_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_5 _let_10)) V5AB_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2Etransfer_2EFUN__REL_2E4 _let_11) _let_8) _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) ((s A_27c) ((app_2E2 _let_6) _let_4))))) ((s A_27d) ((app_2E2 _let_3) _let_1)))))))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_4 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_3) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ecardinal_2EHAS__SIZE_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Ellist_2Ellist A_27a)) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ellist_2ELNTH_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Ellist_2ELNTH_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E0)) _let_6))) _let_5))) _let_4))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) ((tyop_2Epair_2Eprod _let_2) _let_4)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))))) (forall ((A_27a d) (V0E_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_1 _let_2)) V0E_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Equotient_2EEQUIV_2E1 _let_6))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__FORALL_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_6))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebool_2E_21_2E1 _let_4)))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (_let_4 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_3) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (= (_let_341 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (_let_341 c_2Elist_2ESNOC_2E0)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (= (_let_343 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (_let_343 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 tyop_2Emin_2Ebool)) (_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s2_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0v (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V3i mono_2Etyop_2Enum_2Enum) (V4conn (-> Bool Bool Bool)) (V5b Bool) (V6a Bool)) (let ((_let_1 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V2j))) (let ((_let_2 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V3i)))) (let ((_let_3 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V4conn))) (let ((_let_4 ((mono_2Ec_2EdefCNF_2EUNIQUE V0v) V1n))) (let ((_let_5 (V0v V2j))) (let ((_let_6 (V4conn (V0v V3i)))) (let ((_let_7 (V0v V1n))) (let ((_let_8 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V6a)))) (let ((_let_9 (V4conn V6a))) (let ((_let_10 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V5b))) (and (= (_let_4 (_let_3 (_let_2 _let_10))) (= _let_7 (_let_6 V5b))) (= (= _let_7 (_let_9 V5b)) (_let_4 (_let_3 (_let_8 _let_10)))) (= (= _let_7 (_let_9 _let_5)) (_let_4 (_let_3 (_let_8 _let_1)))) (= (= _let_7 (_let_6 _let_5)) (_let_4 (_let_3 (_let_2 _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0) (forall ((V3delta mono_2Etyop_2Enum_2Enum)) (=> (and (V1b ((mono_2Ec_2Earithmetic_2E_2B V3delta) V0t0)) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4t) V3delta) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0)))))) (exists ((V5t mono_2Etyop_2Enum_2Enum)) (and (V2a ((mono_2Ec_2Earithmetic_2E_2B V5t) V0t0)) ((mono_2Ec_2Eprim__rec_2E_3C V5t) V3delta))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1x1_2E0 u) (V2x2_2E0 u) (V3x3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2x2_2E0))) (let ((_let_4 (_let_2 V3x3_2E0))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V1x1_2E0)))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) V0f_2E0)))) (let ((_let_7 (s A_27b))) (= (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_3))) _let_4)))) (_let_7 (_let_6 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_5 _let_4))) _let_3))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5y_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_2 V4x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_6) _let_3))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_3))))))))))))) (= (_let_342 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (_let_342 c_2Elist_2ELENGTH_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Eright__unique_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Eright__unique_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s ((tyop_2Epair_2Eprod _let_4) _let_2)))) (= (_let_5 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0) V1))) (_let_5 ((c_2Epair_2E_2C_2E2 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 tyop_2Emin_2Ebool)) (_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EdefCNF_2EOKDEF V0n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) mono_2Ec_2Ebool_2ET)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V3xs mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (= ((mono_2Ec_2EdefCNF_2EOKDEF V1n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V2x) V3xs)) (and ((mono_2Ec_2EdefCNF_2EOK V1n) V2x) ((mono_2Ec_2EdefCNF_2EOKDEF (mono_2Ec_2Enum_2ESUC V1n)) V3xs))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (=> (and (forall ((V13n mono_2Etyop_2Enum_2Enum) (V14conn (-> Bool Bool Bool)) (V15a Bool) (V16b Bool)) ((V0P V13n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V14conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V15a)) (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V16b))))) (forall ((V9n mono_2Etyop_2Enum_2Enum) (V10conn (-> Bool Bool Bool)) (V11a Bool) (V12j mono_2Etyop_2Enum_2Enum)) ((V0P V9n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V10conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V11a)) (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V12j))))) (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6conn (-> Bool Bool Bool)) (V7i mono_2Etyop_2Enum_2Enum) (V8b Bool)) ((V0P V5n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V6conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V7i)) (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V8b))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2conn (-> Bool Bool Bool)) (V3i mono_2Etyop_2Enum_2Enum) (V4j mono_2Etyop_2Enum_2Enum)) ((V0P V1n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V2conn) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V3i)) (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V4j)))))) (forall ((V17v mono_2Etyop_2Enum_2Enum) (V18v1 (-> Bool Bool Bool)) (V19v2 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) (V20v3 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) ((V0P V17v) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V18v1) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V19v2) V20v3)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_3)))) (= (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0) V1))) (_let_4 ((c_2Elist_2ESNOC_2E2 ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_4 (_let_4 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_3) _let_3))) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (=> ((mono_2Ec_2EdefCNF_2EOKDEF V0n) V1l) (exists ((V2v (-> mono_2Etyop_2Enum_2Enum Bool))) (((mono_2Ec_2EdefCNF_2EDEF V2v) V0n) V1l)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 tyop_2Emin_2Ebool)) (_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Edec2enc_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X0_2E0))) (= (_let_1 (c_2Ecombin_2EI_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0)) _let_2)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1j mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum) (V3conn (-> Bool Bool Bool)) (V4b Bool) (V5a Bool)) (let ((_let_1 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1j))) (let ((_let_2 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V2i)))) (let ((_let_3 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V3conn))) (let ((_let_4 (mono_2Ec_2EdefCNF_2EOK V0n))) (let ((_let_5 ((mono_2Ec_2Eprim__rec_2E_3C V1j) V0n))) (let ((_let_6 ((mono_2Ec_2Eprim__rec_2E_3C V2i) V0n))) (let ((_let_7 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V4b))) (let ((_let_8 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_20mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Esum_2EINR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V5a)))) (and (= (_let_4 (_let_3 (_let_8 _let_7))) mono_2Ec_2Ebool_2ET) (= (_let_4 (_let_3 (_let_8 _let_1))) _let_5) (= (_let_4 (_let_3 (_let_2 _let_7))) _let_6) (= (and _let_6 _let_5) (_let_4 (_let_3 (_let_2 _let_1)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) ((mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Emin_2Ebool) _let_19) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (= (_let_341 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (_let_341 c_2Elist_2ECONS_2E0)) (forall ((V0v (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum) (V2x Bool)) (let ((_let_1 (= (V0v V1n) V2x))) (= (and _let_1 (((mono_2Ec_2EdefCNF_2EDEF V0v) (mono_2Ec_2Enum_2ESUC V1n)) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Elist_2EFOLDL_2E3 ((s (_let_2 (_let_2 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EFINITE__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_1)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_9 (s _let_1))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27c d) (A_27s d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27s) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27s)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a))) (_let_3 ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Estate__transformer_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))) _let_2)))) (= (_let_3 c_2Estate__transformer_2EJOIN_2E0) (_let_3 (c_2Estate__transformer_2EEXT_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ecombin_2EI_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Epair_2EUNCURRY_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b1_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) (_let_2 V1b2_2E0)))))) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3)))))))))) (forall ((A_27state d) (F0_2E0 u) (F4 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F5_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_4))) (=> (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EWF_2E1 _let_4))) (forall ((V1a_2E0 u) (V2j mono_2Etyop_2Enum_2Enum) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2j))) ((s _let_1) V1a_2E0))))) (let ((_let_6 (_let_3 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_9 (tyop_2Emin_2Efun _let_6))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (=> (not (= V3i V2j)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) V0R_2E0)) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V3i) V2j)) ((mono_2Ec_2Earithmetic_2E_2B V3i) _let_8)) ((mono_2Ec_2Earithmetic_2E_2D V3i) _let_8))))) _let_5))))) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3i))) _let_5))))))))))))))))))))))))) (=> (forall ((V6i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum)) (= (= V6i V8j) ((F4 V6i) V8j))) (=> (forall ((V4FOR_2E0 u) (V6i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum) (V9a_2E0 u) (V10u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V9a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V8j)))) (let ((_let_7 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_10 (_let_7 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_10) _let_1))) (let ((_let_12 ((s _let_11) V4FOR_2E0))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_15 ((tyop_2Emin_2Efun _let_3) _let_14))) (let ((_let_16 (_let_2 _let_15))) (let ((_let_17 (_let_2 _let_16))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_17)) F5_2E0)) _let_12))) (_let_5 (i_mono_2Etyop_2Enum_2Enum V6i))))) _let_6))) _let_4))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V10u)))) (_let_13 ((app_2E2 _let_12) ((s _let_10) ((c_2Epair_2E_2C_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V6i) V8j)) ((mono_2Ec_2Earithmetic_2E_2B V6i) _let_9)) ((mono_2Ec_2Earithmetic_2E_2D V6i) _let_9))))) ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))))))))))))))))))))))))) (=> (forall ((V6i mono_2Etyop_2Enum_2Enum) (V4FOR_2E0 u) (V8j mono_2Etyop_2Enum_2Enum) (V9a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V9a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V8j)))) (let ((_let_7 (_let_5 (i_mono_2Etyop_2Enum_2Enum V6i)))) (let ((_let_8 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_9 ((tyop_2Emin_2Efun (_let_8 (_let_8 _let_3))) _let_1))) (let ((_let_10 ((s _let_9) V4FOR_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_2 _let_13))) (let ((_let_15 (_let_2 _let_14))) (let ((_let_16 (tyop_2Emin_2Efun _let_9))) (let ((_let_17 (s _let_1))) (let ((_let_18 (_let_17 ((app_2E2 _let_4) _let_7)))) (let ((_let_19 (_let_12 _let_1))) (let ((_let_20 (_let_2 _let_19))) (let ((_let_21 (_let_16 _let_20))) (= (_let_17 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_2 _let_21)) F3_2E0)) _let_7))) _let_10))) _let_6))) _let_4)) (_let_17 (c_2Ecombin_2EI_2E1 (_let_17 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F4 V6i) V8j)))) _let_18) (_let_17 ((c_2Estate__transformer_2EBIND_2E2 _let_18) ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_16 _let_15)) F5_2E0)) _let_10))) _let_7))) _let_6))) _let_4))))))))))))))))))))))))))))))) (=> (forall ((V4FOR_2E0 u) (V6i mono_2Etyop_2Enum_2Enum) (V7v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_4 _let_5)) _let_1))) (let ((_let_7 ((s _let_6) V4FOR_2E0))) (let ((_let_8 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6i)))) (let ((_let_9 (_let_2 ((tyop_2Emin_2Efun _let_3) _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 ((s _let_5) V7v1_2E0))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_15 (_let_2 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_10 _let_15)) F2_2E0)) _let_7))) _let_8))) _let_12)) (_let_13 ((c_2Epair_2Epair__CASE_2E2 _let_12) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_2 _let_11)) F3_2E0)) _let_8))) _let_7))))))))))))))))))))) (=> (forall ((V4FOR_2E0 u) (V5a_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_2 _let_1)))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V4FOR_2E0))) (let ((_let_9 (_let_2 ((tyop_2Emin_2Efun _let_4) _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 ((s _let_5) V5a_27_2E0))) (let ((_let_12 (s _let_1))) (= (_let_12 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_10 _let_6)) F1_2E0)) _let_8))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F2_2E0)) _let_8)))))))))))))))))) (= (_let_6 c_2Estate__transformer_2EFOR_2E0) (_let_6 ((c_2Erelation_2EWFREC_2E2 ((s _let_5) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) F0_2E0)))) ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F1_2E0))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2Estate__transformer_2EBIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Estate__transformer_2EBIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s _let_3))) (= (_let_9 ((c_2Erelation_2EWFREC_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Erelation_2EWFREC_2E0)) _let_7))) _let_5))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar ((mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Ebool_2Eliteral__case_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0k_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0k_2E0))) (= (_let_2 ((c_2Estate__transformer_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) c_2Estate__transformer_2EUNIT_2E0))) _let_3))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 ((tyop_2Emin_2Efun _let_3) _let_1)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_9 (s _let_1))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s _let_3))) (= (_let_6 (c_2Emin_2E_40_2E1 _let_5)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Emin_2E_40_2E0)) _let_5)))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27e) A_27b))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27e) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 V0l1_2E0)) (_let_1 V1l2_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V0l1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V1l2_2E0))))))))))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Ecombin_2EI_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ecombin_2EI_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_2 _let_1)))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun _let_4) _let_1)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 _let_4))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_10 (s _let_1))) (= (_let_10 ((c_2Epair_2Epair__CASE_2E2 _let_8) _let_6)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epair_2Epair__CASE_2E0)) _let_8))) _let_6)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1s_2E0 u) (V2A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2A_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s A_27b) V0x_2E0)) _let_3))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Estate__transformer_2EMMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Estate__transformer_2EMMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27state d) (F0_2E0 u)) (=> (forall ((V3r_2E0 u) (V4s1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) V4s1_2E0))) (let ((_let_3 ((s A_27a) V3r_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_4))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) F0_2E0)) _let_3))) _let_2)) (_let_5 ((c_2Epair_2E_2C_2E2 _let_3) ((s A_27state) (c_2Epair_2ESND_2E1 _let_2)))))))))))) (forall ((V0v_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27state) V2x_2E0))) (let ((_let_2 ((s A_27b) V0v_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 (tyop_2Epair_2Eprod A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((s (_let_6 _let_5)) V1f_2E0))) (let ((_let_8 (_let_4 A_27state))) (let ((_let_9 (s _let_8))) (= (_let_9 (((c_2Estate__transformer_2ENARROW_2E3 _let_2) _let_7) _let_1)) (_let_9 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) (c_2Epair_2EUNCURRY_2E1 ((s ((tyop_2Emin_2Efun A_27a) (_let_6 _let_8))) F0_2E0)))) ((s _let_5) ((app_2E2 _let_7) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eevery_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eevery_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (forall ((A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27c) A_27s))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27x d) (V0c_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewot_2Euncl_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V0c_2E0)))) (forall ((V1w_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0c_2E0))) (let ((_let_4 (_let_2 V1w_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ewot_2Echain_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Estate__transformer_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2ECURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2ECURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27d)) V1f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 ((s (_let_3 A_27c)) V0g_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_7 (c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_6)) c_2Estate__transformer_2EUNIT_2E0)))) (let ((_let_8 (s (_let_1 _let_6)))) (let ((_let_9 (_let_5 ((tyop_2Epair_2Eprod A_27d) A_27b)))) (= (_let_8 ((c_2Estate__transformer_2EMCOMP_2E2 ((s (_let_3 _let_6)) (_let_7 _let_4))) ((s (_let_1 _let_9)) ((c_2Ecombin_2Eo_2E2 ((s (_let_3 _let_9)) c_2Estate__transformer_2EUNIT_2E0)) _let_2)))) (_let_8 (_let_7 ((s (_let_1 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0m_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a))) V0m_2E0))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) V1f_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Estate__transformer_2EBIND_2E2 _let_2) _let_4)) (_let_5 ((c_2Estate__transformer_2EEXT_2E2 _let_4) _let_2))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD mono_2Ec_2Ebag_2EEMPTY__BAG_2Emono_2Etyop_2Enum_2Enum) V0n) V0n)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EEXT_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Estate__transformer_2EEXT_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Estate__transformer_2EmapM_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Estate__transformer_2EmapM_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2EisPunct V0c) (and (mono_2Ec_2Estring_2EisGraph V0c) (not (mono_2Ec_2Estring_2EisAlphaNum V0c))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 A_27state))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Estate__transformer_2EWRITE_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Estate__transformer_2EWRITE_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_2 _let_1))) V1f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_7 (_let_2 _let_6))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27d) _let_7)) V0g_2E0))) (let ((_let_9 (s (_let_3 _let_7)))) (= (_let_9 ((c_2Estate__transformer_2EMCOMP_2E2 _let_8) _let_4)) (_let_9 (c_2Epair_2ECURRY_2E1 ((s (_let_5 _let_6)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) (c_2Epair_2EUNCURRY_2E1 _let_8))) ((s (_let_5 _let_1)) (c_2Epair_2EUNCURRY_2E1 _let_4))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EMAP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2EMAP_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Estate__transformer_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Emin_2E_40_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Emin_2E_40_2E0)) _let_4))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))) (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Estate__transformer_2EMMAP_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Estate__transformer_2EMMAP_2E0)) _let_5))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27state))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2Ebool_2ELET_2E2 _let_7) _let_3)) (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) c_2Ebool_2ELET_2E0)) _let_7))) _let_3)))))))))))) (forall ((A_27a d) (V0ll_2E0 u) (V1P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (exists ((V2n mono_2Etyop_2Enum_2Enum) (V3a_2E0 u) (V4t_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_2)))) (and (= (_let_4 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_3 V0ll_2E0))) (_let_4 (c_2Eoption_2ESOME_2E1 (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_3 V4t_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1g_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_1))) (= (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_3))) ((s A_27c) V2x_2E0))) _let_3)))))) (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_6 ((s (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a))) V0f_2E0))) (= (_let_3 ((c_2Estate__transformer_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((c_2Estate__transformer_2EBIND_2E2 _let_6) ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_4)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0L1_2E0 u) (V1L2_2E0 u) (V2L3_2E0 u) (V3L4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3L4_2E0))) (let ((_let_3 (_let_1 V2L3_2E0))) (let ((_let_4 (_let_1 V1L2_2E0))) (let ((_let_5 (_let_1 V0L1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_5) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_4))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) A_27a))))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EWF_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Estate__transformer_2EMMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Estate__transformer_2EMMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0L1_2E0 u) (V1L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 V0L1_2E0)) (_let_1 V1L2_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 ((s A_27a) V2x_2E0)))))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (_let_2 (_let_1 V0L1_2E0)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (_let_2 (_let_1 V1L2_2E0)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27s d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V1f_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s)))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V0g_2E0))) (let ((_let_7 (s (_let_3 _let_5)))) (= (_let_7 ((c_2Estate__transformer_2EMCOMP_2E2 _let_6) _let_4)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (c_2Estate__transformer_2EEXT_2E1 _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V1x_27_2E0))) (let ((_let_2 ((s A_27b) V0x_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod A_27b) A_27a)))) (= (_let_3 ((c_2Estate__transformer_2EUNIT_2E2 _let_2) _let_1)) (_let_3 ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27state d) (F0_2E0 u)) (=> (forall ((V1t_2E0 u) (V3a_2E0 u) (V4u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V1t_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_3))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V4u)))) (_let_6 (c_2Estate__transformer_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_2)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))))))))))))) (and (forall ((V1t_2E0 u) (V2h_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1t_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 ((s A_27a) V2h_2E0))) (let ((_let_10 (s _let_1))) (= (_let_10 (c_2Estate__transformer_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_2)) ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_9) _let_6))) _let_3)))) (_let_10 ((c_2Estate__transformer_2EBIND_2E2 (_let_10 ((app_2E2 _let_3) _let_9))) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_6))) _let_3)))))))))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (= (_let_2 (c_2Estate__transformer_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_4) c_2Elist_2ENIL_2E0)) ((s _let_3) V0a_2E0))))) (_let_2 (c_2Estate__transformer_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0b1_2E0))) (= (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__MERGE_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_5))) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 _let_2)) V1f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27d) _let_6)) V0g_2E0))) (let ((_let_8 (s (_let_5 _let_6)))) (= (_let_8 (c_2Estate__transformer_2EEXT_2E1 ((s (_let_3 _let_6)) ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)))) (_let_8 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) (c_2Estate__transformer_2EEXT_2E1 _let_7))) ((s (_let_5 _let_2)) (c_2Estate__transformer_2EEXT_2E1 _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27e) ((tyop_2Epair_2Eprod A_27f) A_27e)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27d) _let_1)))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 (_let_4 ((tyop_2Epair_2Eprod A_27c) A_27b)))))) (let ((_let_7 (_let_6 V0g_2E0))) (and (= (_let_6 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) ((s (_let_5 (_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b)))) c_2Estate__transformer_2EUNIT_2E0))) _let_7) (= (_let_2 ((c_2Estate__transformer_2EMCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27f) _let_1)) c_2Estate__transformer_2EUNIT_2E0)) _let_3)) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Estate__transformer_2EJOIN_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) _let_4))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Estate__transformer_2EUNIT_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Estate__transformer_2EUNIT_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V0g_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27c) A_27a))) (let ((_let_5 (_let_2 _let_4))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V1f_2E0))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Estate__transformer_2EBIND_2E2 _let_3) _let_6)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (c_2Epair_2EUNCURRY_2E1 _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) (_let_3 _let_1)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_2) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Estate__transformer_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) c_2Estate__transformer_2EUNIT_2E0)) _let_1))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_10 (s _let_4))) (= (_let_10 ((c_2Erelation_2EWFREC_2E2 _let_8) _let_6)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Erelation_2EWFREC_2E0)) _let_8))) _let_6)))))))))))))) (forall ((A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Estring_2Echar))) (= (_let_2 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Estate__transformer_2EJOIN_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) _let_4))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 (c_2Estate__transformer_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0))) (_let_2 c_2Ecombin_2EI_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27d) A_27b)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Estate__transformer_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Estate__transformer_2EUNIT_2E0)) _let_1))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 A_27c)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) _let_4)))) (= (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_2)) (_let_5 (c_2Estate__transformer_2EEXT_2E1 ((s (_let_1 _let_4)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Estate__transformer_2EUNIT_2E0)) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) (_let_4 _let_2)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_5)) _let_2))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2EFOLDR_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_8) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_8))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) _let_2)))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) (_let_4 (c_2Epair_2EUNCURRY_2E1 ((s (_let_3 (_let_3 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) c_2Epair_2ESND_2E0)) ((s (_let_1 _let_3)) (c_2Estate__transformer_2EUNIT_2E1 ((s A_27a) V0x_2E0))))) (_let_2 c_2Ecombin_2EI_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27c) A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27e) A_27b))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27e) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2Estate__transformer_2EBIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Estate__transformer_2EBIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod _let_4) A_27a)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Estate__transformer_2EMMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Estate__transformer_2EMMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3y_2E0 u) (V4ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4ys_2E0))) (let ((_let_4 ((s A_27b) V3y_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_7)) F1_2E0)) _let_4))) _let_3)) (_let_6 (c_2Estate__transformer_2EUNIT_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V2f_2E0 u) (V0xs_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (tyop_2Elist_2Elist A_27c))) (let ((_let_8 ((s _let_7) V0xs_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27c) (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_10 ((s _let_9) V2f_2E0))) (let ((_let_11 (s _let_4))) (let ((_let_12 (_let_6 _let_4))) (let ((_let_13 ((tyop_2Emin_2Efun _let_7) _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) F0_2E0)) _let_10))) _let_8))) _let_1)) (_let_11 ((c_2Estate__transformer_2EBIND_2E2 (_let_11 ((c_2Estate__transformer_2EmapM_2E2 _let_10) _let_8))) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_1))))))))))))))))))) (forall ((V0xs_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0xs_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) _let_5))) (let ((_let_7 ((s _let_6) V2f_2E0))) (let ((_let_8 (_let_4 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_11 ((s A_27c) V1x_2E0))) (let ((_let_12 (s _let_8))) (= (_let_12 ((c_2Estate__transformer_2EmapM_2E2 _let_7) (_let_2 ((c_2Elist_2ECONS_2E2 _let_11) _let_3)))) (_let_12 ((c_2Estate__transformer_2EBIND_2E2 ((s _let_5) ((app_2E2 _let_7) _let_11))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_3))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27state) (_let_1 A_27state)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) (_let_1 _let_4)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EWIDEN_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Estate__transformer_2EWIDEN_2E0)) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0a0_2E0 u) (V1a1_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) V1a1_2E0))) (let ((_let_4 ((s A_27a) V0a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V2f_2E0))) (let ((_let_7 (s A_27b))) (= (_let_7 ((c_2EEncode_2Etree__CASE_2E2 ((s _let_1) ((c_2EEncode_2ENode_2E2 _let_4) _let_3))) _let_6)) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_4))) _let_3))))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1ls mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Enumposrep_2El2n V0b))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0b) (= (_let_1 (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EdropWhile_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum V1ls)))) (_let_1 V1ls))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 ((s (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a))) V1m_2E0))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Estate__transformer_2EMMAP_2E2 _let_2) _let_5)) (_let_6 ((c_2Estate__transformer_2EBIND_2E2 _let_5) ((s (_let_1 _let_4)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Estate__transformer_2EUNIT_2E0)) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27e) ((tyop_2Epair_2Eprod A_27f) A_27e)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27f) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Estate__transformer_2EMCOMP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EMCOMP_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Estate__transformer_2EREAD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Estate__transformer_2EREAD_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (= (_let_5 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 ((tyop_2Epair_2Eprod _let_1) A_27a))))) (= (_let_3 ((c_2Estate__transformer_2EmapM_2E2 ((s ((tyop_2Emin_2Efun A_27c) (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a)))) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_3 (c_2Estate__transformer_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) ((s (_let_3 _let_5)) c_2Estate__transformer_2EUNIT_2E0))) (_let_4 c_2Ecombin_2EI_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)))))) (let ((_let_6 ((s (_let_3 A_27b)) V2f_2E0))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2EINJ_2E3 _let_6) _let_5) (_let_7 V0t_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Eset__relation_2Elinear__order_2E2 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_8)) ((c_2Epair_2E_23_23_2E2 _let_6) _let_6))) _let_2))) (_let_7 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_5)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))) _let_3))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Estate__transformer_2EMMAP_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Estate__transformer_2EMMAP_2E0)) _let_5))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0t_2E0 u)) (or (exists ((V1a_2E0 u)) (let ((_let_1 (s (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c)))) (= (_let_1 V0t_2E0) (_let_1 (c_2Einftree_2EiLf_2E1 ((s A_27a) V1a_2E0)))))) (exists ((V2b_2E0 u) (V3d_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 (s _let_1))) (= (_let_2 V0t_2E0) (_let_2 ((c_2Einftree_2EiNd_2E2 ((s A_27b) V2b_2E0)) ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V3d_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Estate__transformer_2EMMAP_2E0)) _let_2))))))))) (forall ((V0a mono_2Etyop_2Estring_2Echar) (V1b mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Echar__ge V0a) V1b) ((mono_2Ec_2Earithmetic_2E_3E_3D (mono_2Ec_2Estring_2EORD V0a)) (mono_2Ec_2Estring_2EORD V1b)))) (forall ((A_27state d) (V0P_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V3a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2j))) ((s _let_1) V3a_2E0))))) (let ((_let_6 (_let_3 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (app_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (=> (not (= V1i V2j)) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1i) V2j)) ((mono_2Ec_2Earithmetic_2E_2B V1i) _let_10)) ((mono_2Ec_2Earithmetic_2E_2D V1i) _let_10))))) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1i))) _let_5))))))))))))))))) (forall ((V4v mono_2Etyop_2Enum_2Enum) (V5v1 mono_2Etyop_2Enum_2Enum) (V6v2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (_let_3 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_5) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V4v))) ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V5v1))) ((s _let_1) V6v2_2E0)))))))))))))))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_3 V2f_2E0)))) (let ((_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_3 V1g_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2))))))))))) (forall ((V3s_2E0 u) (V4g_2E0 u) (V5f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V3s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V5f_2E0)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 ((s _let_4) V4g_2E0)))) (= (_let_1 (_let_6 (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))))))))) (forall ((V9s_2E0 u) (V10g_2E0 u) (V11f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V9s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V11f_2E0)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 ((s _let_4) V10g_2E0)))) (= (_let_1 (_let_6 (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))))))))) (forall ((V15s_2E0 u) (V16g_2E0 u) (V17f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V15s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_5 V17f_2E0)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_5 V16g_2E0)))) (= (_let_1 (_let_6 (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))))))))) (forall ((V12s_2E0 u) (V13g_2E0 u) (V14f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V12s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V14f_2E0)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 ((s _let_4) V13g_2E0)))) (= (_let_1 (_let_6 (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))))))))) (forall ((V6s_2E0 u) (V7g_2E0 u) (V8f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V6s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) V8f_2E0)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 ((s _let_4) V7g_2E0)))) (= (_let_1 (_let_6 (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27d))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V0f_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_5 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 (s (_let_5 _let_2)))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_3)) (_let_6 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) ((s (_let_5 _let_4)) (c_2Estate__transformer_2EMMAP_2E1 _let_3)))))))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Estate__transformer_2EFOREACH_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Estate__transformer_2EFOREACH_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_2)) (c_2Estate__transformer_2EEXT_2E1 _let_5))) ((s (_let_3 _let_6)) c_2Estate__transformer_2EUNIT_2E0))) _let_5)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (= (_let_2 ((c_2Epair_2EUNCURRY_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1))) c_2Estate__transformer_2EUNIT_2E0)) _let_3)) _let_3))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1h_2E0 u) (V2t_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (= (_let_4 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_5 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) (_let_5 V2t_2E0))))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3))) (or (exists ((V4n mono_2Etyop_2Enum_2Enum) (V5l_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5l_27_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (and (= V0m (mono_2Ec_2Enum_2ESUC V4n)) (= (_let_2 V3l_2E0) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) _let_3))) (= (_let_4 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n))) ((s (tyop_2Ellist_2Ellist A_27a)) V2t_2E0))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3))))))))) (and (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (= V0m mono_2Ec_2Enum_2E0)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) _let_2)))) (forall ((V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V2b_2E0))) _let_2)))) (forall ((V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_2)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 A_27c)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_5 (s (_let_1 _let_4)))) (let ((_let_6 (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_4)) (c_2Estate__transformer_2EMMAP_2E1 _let_2))) ((s (_let_1 _let_6)) c_2Estate__transformer_2EUNIT_2E0))) (_let_5 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Estate__transformer_2EUNIT_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0l_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 ((s _let_4) V1ll_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) F0_2E0)) _let_2))) _let_5))) (= (_let_3 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) _let_5)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))))))) (=> (forall ((V0l_2E0 u) (V2ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2ys_2E0))) (let ((_let_4 (_let_2 V0l_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3)))))))))))) (forall ((V0l_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1ll_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ellist_2ELPREFIX_2E2 (_let_6 (c_2Ellist_2EfromList_2E1 _let_2))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Ellist_2EtoList_2E1 _let_7))) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_2))) _let_7))) ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F1_2E0)) _let_2))))))))))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V2e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1b2_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_5))))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Eone_2Eone) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_3 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27state))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27state)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0x_2E0)))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 (_let_4 _let_3))) (_let_1 (_let_4 _let_2)))) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) _let_3)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 A_27c)) V1g_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_5 (tyop_2Emin_2Efun (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27c) A_27d)) V0f_2E0))) (let ((_let_7 (_let_3 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_8 (s (_let_5 _let_7)))) (= (_let_8 (c_2Estate__transformer_2EMMAP_2E1 ((s (_let_1 A_27d)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_2)))) (_let_8 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) (c_2Estate__transformer_2EMMAP_2E1 _let_6))) ((s (_let_5 _let_4)) (c_2Estate__transformer_2EMMAP_2E1 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 ((tyop_2Epair_2Eprod _let_1) A_27a))))) (= (_let_3 (c_2Estate__transformer_2Esequence_2E1 ((s (tyop_2Elist_2Elist (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a)))) c_2Elist_2ENIL_2E0))) (_let_3 (c_2Estate__transformer_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (c_2Estate__transformer_2EEXT_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V0f_2E0))))) (let ((_let_5 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))))) (let ((_let_6 (s (_let_5 _let_2)))) (= (_let_6 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_5 _let_3)) c_2Estate__transformer_2EJOIN_2E0))) (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) _let_2)))) (forall ((V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) _let_2)) _let_2)))) (forall ((V2b1_2E0 u) (V3b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (let ((_let_3 (_let_1 V2b1_2E0))) (let ((_let_4 (_let_1 V3b2_2E0))) (= (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_4)) _let_2) (and (= _let_4 _let_2) (= _let_3 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0k_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) V0k_2E0))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V1m_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Estate__transformer_2EBIND_2E2 _let_2) _let_4)) (_let_5 (c_2Estate__transformer_2EJOIN_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))) ((c_2Estate__transformer_2EMMAP_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27state) X2_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27b) X0_2E0))) (let ((_let_7 (_let_3 A_27state))) (let ((_let_8 ((tyop_2Emin_2Efun A_27state) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Estate__transformer_2ENARROW_2E3 _let_6) _let_5) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_9)) c_2Estate__transformer_2ENARROW_2E0)) _let_6))) _let_5))) _let_1)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (exists ((V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l_2E0)) (_let_1 V1l2_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 V0l1_2E0)) (_let_1 V1l2_2E0))))))) (= mono_2Ec_2Erich__list_2EOR__EL (mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1xs_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 _let_3) _let_2)) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1m) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1m) ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n))) V0n)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V2f_2E0 u) (V3e_2E0 u) (V4x_2E0 u) (V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V2f_2E0))) (let ((_let_6 ((c_2Erich__list_2ESCANR_2E3 _let_5) (_let_3 V3e_2E0)))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_8 (_let_7 (_let_6 _let_2)))) (let ((_let_9 ((s A_27a) V4x_2E0))) (= (_let_7 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 _let_9) _let_2)))) (_let_7 ((c_2Elist_2ECONS_2E2 (_let_3 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_9))) (_let_3 (c_2Elist_2EHD_2E1 _let_8))))) _let_8))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s A_27b) V1e_2E0))) (= (_let_1 (((c_2Erich__list_2ESCANR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1A_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 ((s A_27a) V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_2))) _let_3)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_6) _let_3))) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1A_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) ((s _let_4) V0f_2E0)))) _let_2)))))))))))))))))) (= (_let_336 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_336 c_2Elist_2EFOLDR_2E0)) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Elist_2ESNOC_2E2 (_let_4 V1x_2E0)) _let_2)))) (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V0n)))) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Elist_2EFOLDR_2E3 ((s (_let_2 (_let_2 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ESNOC_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erich__list_2EIS__SUBLIST_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erich__list_2EIS__SUBLIST_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Erich__list_2ESPLITP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Erich__list_2ESPLITP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Erich__list_2EUNZIP__SND_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Erich__list_2EUNZIP__SND_2E0)) _let_2)))))))) (and (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Estring_2Estring__lt V0s) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Ebool_2EF)) (forall ((V3s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V4s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5c2 mono_2Etyop_2Estring_2Echar) (V6c1 mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Estring__lt ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V6c1) V4s1)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V5c2) V3s2)) (or (and (= V6c1 V5c2) ((mono_2Ec_2Estring_2Estring__lt V4s1) V3s2)) ((mono_2Ec_2Estring_2Echar__lt V6c1) V5c2)))) (forall ((V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2c mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Estring__lt mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2c) V1s)) mono_2Ec_2Ebool_2ET))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n) ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) V0n))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Erich__list_2ELIST__ELEM__COUNT_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 (_let_3 _let_2))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) _let_2))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Elist_2EEXISTS_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2e_2E0)) (_let_1 V1l2_2E0))))) (let ((_let_3 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l1_2E0)))) (= (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 (_let_3 _let_2)))) (_let_1 (_let_3 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) (_let_2 c_2Elist_2ENIL_2E0)) _let_3)) _let_3))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ewellorder_2Ewellorder__REP_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (V0c_2E0 u) (V1a_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1a_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_2) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V0c_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u) (V3d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3d_2E0))) (let ((_let_4 (_let_2 V1b_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V2c_2E0))) (let ((_let_8 (_let_6 V0a_2E0))) (let ((_let_9 (s ((tyop_2Epair_2Eprod _let_5) _let_1)))) (let ((_let_10 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_11 (s tyop_2Enum_2Enum))) (=> (and (= (j_mono_2Etyop_2Enum_2Enum (_let_11 (c_2Elist_2ELENGTH_2E1 _let_7))) (j_mono_2Etyop_2Enum_2Enum (_let_11 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_11 (c_2Elist_2ELENGTH_2E1 _let_8))) (j_mono_2Etyop_2Enum_2Enum (_let_11 (c_2Elist_2ELENGTH_2E1 _let_4))))) (= (_let_10 ((c_2Elist_2EAPPEND_2E2 (_let_10 (c_2Elist_2EZIP_2E1 (_let_9 ((c_2Epair_2E_2C_2E2 _let_8) _let_4))))) (_let_10 (c_2Elist_2EZIP_2E1 (_let_9 ((c_2Epair_2E_2C_2E2 _let_7) _let_3)))))) (_let_10 (c_2Elist_2EZIP_2E1 (_let_9 ((c_2Epair_2E_2C_2E2 (_let_6 ((c_2Elist_2EAPPEND_2E2 _let_8) _let_7))) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)))) (let ((_let_6 (_let_5 (_let_4 V1e_2E0)))) (= (_let_4 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_4 ((_let_5 (_let_4 (_let_6 _let_3))) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 X1)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V1l2_2E0))))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V2R_2E0)) _let_3) _let_1))) (and (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (forall ((V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3i)))) (let ((_let_3 (c_2Elist_2EEL_2E2 _let_2))) (let ((_let_4 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_5))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6)) V2R_2E0)) _let_2))) ((s A_27a) (_let_3 _let_4))))) ((s A_27b) (_let_3 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0)))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX (mono_2Ec_2Enum_2ESUC V1n)) V2l) ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX V1n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V1n) V2l)))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX mono_2Ec_2Enum_2E0) V0l) V0l))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1v_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_3 ((s _let_2) V1v_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_3))) _let_1)) (_let_6 ((app_2E2 _let_5) ((s A_27a) ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1)))))))))))))) (forall ((V0f_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_2 ((s _let_1) V1v_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s ((tyop_2Efcp_2Ecart A_27b) A_27c)))) (= (_let_7 ((c_2Efcp_2EFCP__MAP_2E2 _let_4) _let_2)) (_let_7 (c_2Efcp_2EFCP_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1b2_2E0 u) (V2b1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b2_2E0))) (let ((_let_5 (_let_3 V2b1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (not (= _let_4 (_let_3 c_2Ebag_2EEMPTY__BAG_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) _let_5) (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4)))))))))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (mono_2Ec_2Erich__list_2EAND__EL V0l) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) mono_2Ec_2Ebool_2ET) V0l))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Elist_2EMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2EMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2EPREFIX_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Erich__list_2EPREFIX_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 (c_2Elist_2EREVERSE_2E1 _let_4))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ecombin_2EASSOC_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Ecombin_2EASSOC_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_2)) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0e_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 ((s A_27a) V0e_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V1e_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (c_2Erich__list_2ELIST__ELEM__COUNT_2E2 ((s A_27b) V1e_2E0)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_1 V2l1_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (_let_3 _let_2))))))))))) (forall ((V4e_2E0 u) (V5h_2E0 u) (V6l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V6l_2E0))) (let ((_let_3 (s A_27c))) (let ((_let_4 (_let_3 V4e_2E0))) (let ((_let_5 (c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_3 V5h_2E0))) (=> (= _let_7 _let_4) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2)))))))))))))) (forall ((V7e_2E0 u) (V8h_2E0 u) (V9l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27d)))) (let ((_let_2 (_let_1 V9l_2E0))) (let ((_let_3 (s A_27d))) (let ((_let_4 (_let_3 V7e_2E0))) (let ((_let_5 (c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_3 V8h_2E0))) (=> (not (= _let_7 _let_4)) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_5 V1l1_2E0))) (let ((_let_7 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0f_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_6) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V3n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_5 (_let_4 _let_6))) (_let_1 (_let_4 _let_2))))))))))))))) (forall ((A_27a d)) (and (forall ((V0k mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_2 (i_mono_2Etyop_2Enum_2Enum V0k))) (_let_1 V1l_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3x_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V3x_2E0)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2m)))) _let_4) (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_4) _let_2))))))))))) (forall ((V5m mono_2Etyop_2Enum_2Enum) (V6k mono_2Etyop_2Enum_2Enum) (V7x_2E0 u) (V8l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V5m)))))) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V6k)))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V7x_2E0)) _let_2)))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V6k))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1v_2E0 u) (V3rows__after_2E0 u) (V4r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) V3rows__after_2E0))) (let ((_let_5 ((s _let_2) V4r_2E0))) (let ((_let_6 ((s A_27b) V1v_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F0_2E0)) _let_6))) _let_4))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_6) _let_5) _let_4)))))))))))))) (forall ((V0P_2E0 u) (V1v_2E0 u) (V2rows__before_2E0 u) (V3rows__after_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3rows__after_2E0))) (let ((_let_6 ((s A_27b) V1v_2E0))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 V2rows__before_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E4 _let_7) _let_6) _let_9) _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEVERY_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_1 _let_11)) F0_2E0)) _let_6))) _let_5))) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_7) ((s A_27a) ((c_2EpatternMatches_2EPMATCH_2E2 _let_6) _let_5))))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (= (_let_1 (_let_3 _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_3 (_let_1 c_2Elist_2ENIL_2E0)))) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EMONOID_2E2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)) ((s A_27a) V1e_2E0)))) (forall ((V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 A_27a))) V0f_2E0))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 _let_5) _let_3) _let_1)) (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_5) _let_3) _let_1)))))))))))) (= (_let_336 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_336 c_2Elist_2EFOLDL_2E0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_5 _let_3))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDL_2E0)) _let_8))) _let_5))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_3 (c_2Ellist_2ELLENGTH_2E1 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) V0h_2E0)) _let_2))))) ((mono_2Ec_2Eoption_2EOPTION__MAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2ESUC) (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (_let_3 (c_2Ellist_2ELLENGTH_2E1 _let_2))))))))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 X0_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_7))) (= (_let_11 (((c_2Erich__list_2ESPLITP__AUX_2E3 _let_6) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) c_2Erich__list_2ESPLITP__AUX_2E0)) _let_6))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0ls_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_7 (s _let_1))) (= (_let_2 ((c_2Ellist_2ELDROP_2E2 _let_6) (_let_7 (c_2Ellist_2EfromList_2E1 _let_4)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4))))))) (_let_2 (c_2Eoption_2ESOME_2E1 (_let_7 (c_2Ellist_2EfromList_2E1 (_let_3 ((c_2Elist_2EDROP_2E2 _let_6) _let_4))))))) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecombin_2EFCOMM_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2EFCOMM_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)) _let_2)))) (_let_1 (_let_3 _let_2))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) _let_2))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (mono_2Ec_2Erich__list_2EOR__EL V0l) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) V0l))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V1Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_4))) _let_6))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEXISTS_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEXISTS_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V5r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V0v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V5r_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F0_2E0)) _let_3))) _let_6))) (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1rows_2E0))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_4) _let_3) (_let_6 (i_mono_2Etyop_2Emin_2Ebool V2c))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) _let_3))) V2c) (forall ((V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_2)))) (=> ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool V4i) V3infos) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 ((s A_27a) V0v_2E0)) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V4i)))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1xs_2E0 u) (V2ys_2E0 u) (V3xs1_2E0 u) (V4ys1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4ys1_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V3xs1_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2ys_2E0))) (let ((_let_8 (_let_3 V1xs_2E0))) (let ((_let_9 (s tyop_2Enum_2Enum))) (=> (and (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_8))) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_8) _let_4))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_2)))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_6 A_27a))) (let ((_let_10 (_let_4 _let_9))) (= (_let_2 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_8))) _let_1))) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 _let_8) _let_3))) _let_1)))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_5 A_27a)))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_5 (_let_6 A_27a)))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (((c_2Elist_2EFOLDR_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4) _let_2))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l1_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l1_2E0))))) (forall ((V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V3l2_2E0))))) (_let_1 (_let_4 _let_2)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_3 ((c_2Elist_2ESNOC_2E2 _let_2) (_let_3 V0l_2E0))))) _let_2))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2l_27 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V1x_2E0)))) V2l_27) mono_2Ec_2Ebool_2EF))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2ENULL_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) F0_2E0)) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_5 (_let_3 (_let_5 (_let_4 _let_2)))) (_let_5 (_let_4 (_let_1 (_let_3 _let_2))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0l_2E0))) (= (_let_1 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) (_let_3 ((c_2Elist_2ECONS_2E2 _let_2) _let_4)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0z_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0z_2E0))) (let ((_let_3 (_let_1 V3y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) F0_2E0)) _let_2))) ((s A_27b) V2x_2E0)))) _let_3))) (not (= _let_3 _let_2)))))))))) (=> (forall ((V0z_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V0z_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2))) (not (= _let_3 _let_2))))))))) (forall ((V0z_2E0 u) (V1ls_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1ls_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (c_2Elist_2EMAP_2E2 ((s (_let_4 A_27a)) c_2Epair_2ESND_2E0)))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_7 ((s A_27a) V0z_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (= (_let_6 (_let_5 (_let_2 ((c_2Elist_2EFILTER_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F0_2E0)) _let_7))))) _let_3)))) (_let_6 ((c_2Elist_2EFILTER_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) F1_2E0)) _let_7))) (_let_6 (_let_5 _let_3))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2EASSOC_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)))) (forall ((V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ERIGHT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)) ((s A_27a) V1e_2E0)))) (forall ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 (_let_5 A_27a))) V0f_2E0))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((c_2Elist_2EFOLDL_2E3 _let_6) _let_4))) (= (_let_3 (_let_8 (_let_7 (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_3 (_let_8 (_let_7 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) ((c_2Elist_2EFOLDL_2E2 _let_6) _let_4))) _let_2)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0n1 mono_2Etyop_2Enum_2Enum) (V1m1 mono_2Etyop_2Enum_2Enum) (V2n2 mono_2Etyop_2Enum_2Enum) (V3m2 mono_2Etyop_2Enum_2Enum) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n2))))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n1) V1m1)) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V2n2) V3m2)) V0n1)) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3m2))) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n1))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m1))) _let_2)))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1m1) V3m2)))) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s A_27a) V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_2 ((c_2EindexedLists_2Efindi_2E2 _let_3) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUBLIST_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUBLIST_2E2 _let_3) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (_let_3 (c_2Elist_2ELAST_2E1 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)))) (_let_3 (c_2Elist_2ELAST_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V0f_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 ((s A_27b) V5y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0f_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_11 ((s _let_10) V2P_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_6))) (= (_let_1 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_12)) F0_2E0)) _let_11))) _let_8))) _let_2))) _let_3)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_11) _let_3))) (_let_1 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_2))) _let_3))) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2P_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 A_27a)))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0f_2E0))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V2P_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_6))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_4) (_let_1 ((c_2Elist_2EFILTER_2E2 _let_10) _let_2)))) (_let_3 (((c_2Elist_2EFOLDL_2E3 (_let_7 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_11)) F0_2E0)) _let_10))) _let_8))) _let_4) _let_2))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((s (_let_1 _let_2)) V1R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1)))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V1R_2E0))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 (_let_7 V2Q_2E0)))) (let ((_let_10 (c_2Equotient_2Erespects_2E2 _let_6))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_3))) _let_2)))))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_3 (c_2Equotient_2Erespects_2E1 _let_4))) (_let_3 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 _let_4) (_let_3 V2Q_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EFOLDL_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EFOLDL_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0l2_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))))) V1n) (forall ((V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l1_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 tyop_2Enum_2Enum))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2Eis__measure__maximal_2E3 _let_8) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epred__set_2Eis__measure__maximal_2E0)) _let_8))) _let_6))) _let_2))))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0))))) V1n) (forall ((V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2)))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))) (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2)))) _let_2)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 (_let_1 _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0_2E0 u)) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum) (V3c mono_2Etyop_2Enum_2Enum)) (= (= V0a V3c) ((F1 V0a) V3c))) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b_2E0 u) (V2x_2E0 u) (V3c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3c)))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((s _let_3) V2x_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V1b_2E0))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 A_27a))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (= (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0a))))) _let_6))) _let_4))) _let_2)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F1 V0a) V3c)))) _let_6) (_let_5 ((c_2Efcp_2Efcp__index_2E2 _let_4) _let_2)))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2x_2E0))) (let ((_let_4 ((s A_27a) V1b_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0a)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_8))) (= (_let_2 (((c_2Efcp_2E_3A_2B_2E3 _let_5) _let_4) _let_3)) (_let_2 (c_2Efcp_2EFCP_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_5))) _let_4))) _let_3)))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 (c_2Elist_2EREVERSE_2E1 _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 _let_2)) (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ecombin_2EFCOMM_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2EFCOMM_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2ls_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 ((s _let_6) V1x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((s A_27a) (c_2Epair_2EFST_2E1 _let_7)))) (let ((_let_10 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (= (and (= (_let_10 (c_2Epair_2ESND_2E1 _let_7)) (_let_10 ((app_2E2 _let_4) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_9) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_7) ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_6)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_5)) ((c_2Epair_2E_2C_2E2 _let_2) ((s _let_5) ((c_2Elist_2EMAP_2E2 _let_4) _let_2)))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0e_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_2))) _let_3))) (= _let_3 _let_2)))))))) (forall ((V0e_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V0e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EFRONT_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EFRONT_2E0)) _let_3))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (forall ((V2b mono_2Etyop_2Enum_2Enum) (V0c2n (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= (((mono_2Ec_2EASCIInumbers_2Es2n V2b) V0c2n) V3s) mono_2Ec_2Enum_2E0) (((F0 V2b) V0c2n) V3s))) (forall ((V0c2n (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1n2c (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V2b mono_2Etyop_2Enum_2Enum) (V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (((mono_2Ec_2EASCIInumbers_2Es2n V2b) V0c2n) V3s))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V2b) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V2b)) V0c2n)) V3s)) (= (((mono_2Ec_2EASCIInumbers_2En2s V2b) V1n2c) _let_1) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((F0 V2b) V0c2n) V3s)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar (V1n2c mono_2Ec_2Enum_2E0)) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V1n2c) V0c2n)) ((mono_2Ec_2Erich__list_2ELASTN_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Elogroot_2ELOG V2b) _let_1))) V3s))))))))) (= (_let_326 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool)) (_let_326 c_2Elist_2EFOLDL_2E0)) (forall ((A_27a d) (V0R_2E0 u) (V1L1_2E0 u) (V2L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2L2_2E0))) (let ((_let_3 (_let_1 V1L1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (c_2Esorting_2ESORTED_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2Etransitive_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27a)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_3) (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 (_let_8 V1L1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_2) (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 (_let_8 V2L2_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) _let_3))) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) V0f_2E0))) (let ((_let_8 (c_2Elist_2EFOLDR_2E3 _let_7))) (= (_let_3 ((_let_8 _let_4) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_5) _let_2)))) (_let_3 ((_let_8 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_5))) _let_4))) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0s_2E0 u) (V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((s A_27a) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Erich__list_2ESCANL_2E3 _let_6) _let_3) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Erich__list_2ESCANL_2E0)) _let_6))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2))))) V0n)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V1l1_2E0))) (let ((_let_6 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_4 (_let_3 _let_5))) (_let_1 (_let_3 _let_2)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))))) (forall ((V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V2l2_2E0))))) (_let_1 (_let_3 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Earithmetic_2EFUNPOW_2E0)) _let_7))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0y_2E0))) (let ((_let_4 (_let_2 V1x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_6 V2s_2E0))) (let ((_let_8 ((c_2Epred__set_2Eis__measure__maximal_2E3 ((s (_let_5 tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) (_let_6 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_7))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3))) (not (= _let_7 (_let_6 c_2Epred__set_2EEMPTY_2E0)))) (= _let_4 _let_3)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 _let_2) _let_1))) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) mono_2Ec_2Ebool_2ET) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ELEFT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ELEFT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1l_2E0 u) (V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (_let_2 V2p_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 _let_5))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_3))) _let_4)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3)))))))))))))) (=> (forall ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 ((app_2E2 ((s (_let_3 _let_5)) F0_2E0)) _let_2)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F1_2E0)) _let_2)))))))))))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s_2E0))) (= (_let_3 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_4)) (_let_3 (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_2)) F0_2E0)) _let_4))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2EPREFIX_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Erich__list_2EPREFIX_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> (-> Bool Bool) Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 _let_2) _let_1))) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 _let_2) _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2EASSOC_2E1 ((s (_let_2 (_let_2 _let_1))) c_2Elist_2EAPPEND_2E0))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1k)) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1k))) _let_2))))) V0n)))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) V0m) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2)))) (_let_1 (_let_4 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (V0a0_2E0 u) (V1a1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0a0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1a1))))) (or (exists ((V2h_2E0 u) (V3n mono_2Etyop_2Enum_2Enum) (V4t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V4t_2E0))) (and (= V1a1 (mono_2Ec_2Enum_2ESUC V3n)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))))) (= (_let_1 V0a0_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V2h_2E0)) _let_2))))))) (and (= _let_2 (_let_1 c_2Ellist_2ELNIL_2E0)) (= V1a1 mono_2Ec_2Enum_2E0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l1_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) V1l1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_3))) _let_1)) (_let_5 ((c_2Epair_2E_2C_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_1) _let_3))) _let_1)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1l1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) tyop_2Enum_2Enum))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_7 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (=> (= V0n (j_mono_2Etyop_2Enum_2Enum _let_3)) (= (_let_6 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_7)) ((c_2Epair_2E_2C_2E2 _let_2) ((s _let_7) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n))))))) (_let_6 ((c_2Elist_2EGENLIST_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_2))) _let_3)))))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Erich__list_2EELL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Erich__list_2EELL_2E0)) _let_3))) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 tyop_2Enum_2Enum)) (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) ((tyop_2Epair_2Eprod _let_3) _let_3)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erich__list_2ESPLITL_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Erich__list_2ESPLITL_2E0)) _let_2))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V3l_27 Bool)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1))) V3l_27) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))) V3l_27))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Elist_2EEVERY_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_1))))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun (_let_4 A_27b)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Etransfer_2EFUN__REL_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Etransfer_2EFUN__REL_2E0)) _let_6))) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_3)))) (= (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0) V1))) (_let_4 ((c_2Elist_2ECONS_2E2 ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Erich__list_2EREPLICATE_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Erich__list_2EREPLICATE_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) (c_2Erich__list_2EUNZIP__SND_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))) (= (_let_335 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar)) (_let_335 c_2Ebool_2Eliteral__case_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (c_2Erich__list_2ETL__T_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) _let_2)))) _let_2)))) (= (_let_1 (c_2Erich__list_2ETL__T_2E1 _let_2)) _let_2))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 ((s A_27c) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 A_27c))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EpatternMatches_2EPMATCH__ROW__COND_2E0)) _let_8))) _let_6))) _let_2))) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0P1_2E0 u) (V1P2_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P1_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P2_2E0)) _let_1))))))))) (= (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 V0P1_2E0)) _let_2)) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 V1P2_2E0)) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (= (_let_1 (_let_3 (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 (_let_3 _let_2)))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (= (_let_2 c_2Erich__list_2ESPLITP_2E0) (_let_2 (c_2Erich__list_2ESPLITP__AUX_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EFILTER_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Elist_2EFILTER_2E0)) _let_2))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1P) V0Q) V3t) (and (V1P V3t) (V0Q V3t)))) (forall ((V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1P) V2x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0Q) V2x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V1P) V0Q)) V2x))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2b_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1a_2E0))) (let ((_let_7 (s tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 (c_2Elist_2ELENGTH_2E1 _let_6)))) (let ((_let_9 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_10 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_11 (c_2Elist_2ETAKE_2E2 (_let_7 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_12 (j_mono_2Etyop_2Enum_2Enum _let_8))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) (j_mono_2Etyop_2Enum_2Enum (_let_7 (c_2Elist_2ELENGTH_2E1 _let_3)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_12)) (= (_let_10 (c_2Elist_2EZIP_2E1 (_let_9 ((c_2Epair_2E_2C_2E2 (_let_5 (_let_11 _let_6))) (_let_2 (_let_11 _let_3)))))) (_let_10 (_let_11 (_let_10 (c_2Elist_2EZIP_2E1 (_let_9 ((c_2Epair_2E_2C_2E2 _let_6) (_let_2 ((c_2Elist_2ETAKE_2E2 _let_8) _let_3))))))))))))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d)) (and (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_3 ((c_2Erich__list_2ESPLITP_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) (_let_3 ((c_2Epair_2E_2C_2E2 _let_2) _let_2))))))) (forall ((V1P_2E0 u) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_5 (c_2Erich__list_2ESPLITP_2E2 _let_4))) (let ((_let_6 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_7 (_let_6 (_let_5 _let_3)))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (c_2Elist_2ECONS_2E2 _let_8))) (let ((_let_10 (_let_2 (_let_9 _let_3)))) (= (_let_6 (_let_5 _let_10)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_8))) (_let_6 ((c_2Epair_2E_2C_2E2 (_let_2 c_2Elist_2ENIL_2E0)) _let_10))) (_let_6 ((c_2Epair_2E_2C_2E2 (_let_2 (_let_9 (_let_2 (c_2Epair_2EFST_2E1 _let_7))))) (_let_2 (c_2Epair_2ESND_2E1 _let_7)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EUNIQUE_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Elist_2EUNIQUE_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (= _let_2 (_let_1 c_2Ellist_2ELNIL_2E0)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_2))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1Q_2E0))) (let ((_let_6 (_let_4 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (= (_let_1 ((c_2Elist_2EFILTER_2E2 _let_6) (_let_1 ((c_2Elist_2EFILTER_2E2 _let_5) _let_2)))) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_5))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (or (=> (V1b _let_1) (V0a _let_1)) (V3q _let_1)))) (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0))) (((mono_2Ec_2ETemporal__Logic_2EWHEN V0a) V1b) V2t0))) (forall ((A_27a d) (V0j mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0j) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V1n) V0j)) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) _let_3))) (= (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0j))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) _let_2)))) (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0j) _let_3)))) _let_2)))))))))) (forall ((A_27a d) (V0n1 mono_2Etyop_2Enum_2Enum) (V1n2 mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n1) V1n2) (= (_let_1 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n1))) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Erich__list_2EREPLICATE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n2))) _let_2)))) _let_2)))))) (= (_let_331 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Eone_2Eone)) (_let_331 c_2EDecode_2Eenc2dec_2E0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2Eliteral__case_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0a) V1b) V2t0) (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (and (V0a _let_1) (not (V1b _let_1)) (not (V3q _let_1))))) (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2)))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_2))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Erich__list_2EREPLICATE_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Erich__list_2EREPLICATE_2E0)) _let_2))) _let_1))))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (mono_2Ec_2Erich__list_2EAND__EL V0l) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) mono_2Ec_2Ebool_2ET) V0l))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0P_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_5))) _let_2))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_5) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1l_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2E_2B V1i))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1i)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C (_let_3 V0n)) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_5) _let_2)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_5) _let_2))) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_4 (i_mono_2Etyop_2Enum_2Enum (_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))))))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) V0x_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_1)) (_let_3 ((c_2Elist_2ECONS_2E2 _let_1) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_1))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1l1_2E0 u) (V2x_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_4 V0y_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V2x_2E0)))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_2 V1l1_2E0))) (=> (= (_let_7 (c_2Esorting_2EPERM_2E1 _let_8)) (_let_7 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_6 _let_3))))) (= (_let_7 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_8)))) (_let_7 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_6 (_let_2 (_let_5 _let_3))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E0)) _let_6))) _let_5))) _let_4))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) _let_2))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_3 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))) (_let_1 (_let_2 _let_3)))) (_let_1 (_let_2 (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d)) (and (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3x_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2m)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 ((s A_27a) V3x_2E0)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum _let_5))) _let_4) (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_4) _let_2)))))))))))) (forall ((V5m mono_2Etyop_2Enum_2Enum) (V6x_2E0 u) (V7l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V7l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V6x_2E0)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V5m))))) _let_4) (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V5m))))) _let_4) _let_2))))))))))) (forall ((V20m mono_2Etyop_2Enum_2Enum) (V21k mono_2Etyop_2Enum_2Enum) (V22x_2E0 u) (V23l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V23l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V20m))))))) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V21k))))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V22x_2E0)) _let_2)))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V21k))))) _let_2)))))))) (forall ((V16m mono_2Etyop_2Enum_2Enum) (V17k mono_2Etyop_2Enum_2Enum) (V18x_2E0 u) (V19l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V19l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V16m))))))) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V17k))))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V18x_2E0)) _let_2)))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V17k))))) _let_2)))))))) (forall ((V12m mono_2Etyop_2Enum_2Enum) (V13k mono_2Etyop_2Enum_2Enum) (V14x_2E0 u) (V15l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V15l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V13k)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V12m))))))) (= (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V14x_2E0)) _let_2)))) (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))) (forall ((V8m mono_2Etyop_2Enum_2Enum) (V9k mono_2Etyop_2Enum_2Enum) (V10x_2E0 u) (V11l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V11l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V9k)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V8m))))))) (= (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V10x_2E0)) _let_2)))) (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))) (forall ((V0k mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_2 (i_mono_2Etyop_2Enum_2Enum V0k))) (_let_1 V1l_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) (((c_2Erich__list_2ESCANL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s A_27a) V1e_2E0)) _let_1))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Estring_2Echar) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_4 _let_1))) (let ((_let_8 (_let_4 _let_7))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_7))) (= (_let_2 (((c_2Epred__set_2EITSET_2E3 _let_9) _let_6) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_10)) c_2Epred__set_2EITSET_2E0)) _let_9))) _let_6))) _let_3)))))))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2t0) (exists ((V3J (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (=> (and (not (V0b _let_1)) (V3J _let_1)) (and (V1a _let_1) (V3J (mono_2Ec_2Enum_2ESUC _let_1)))))) (V3J V2t0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ERIGHT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ERIGHT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))))) (let ((_let_5 (s (_let_4 _let_3)))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Estate__transformer_2EJOIN_2E0))) (let ((_let_7 (c_2Ecombin_2Eo_2E2 _let_6))) (let ((_let_8 (s (_let_4 _let_2)))) (= (_let_8 (_let_7 (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_6)))) (_let_8 (_let_7 (_let_5 c_2Estate__transformer_2EJOIN_2E0))))))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u) (V0longer_20than_20list Bool) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 (i_mono_2Etyop_2Emin_2Ebool V0longer_20than_20list)))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 (s (_let_10 _let_9)))) (let ((_let_12 (_let_10 _let_1))) (let ((_let_13 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_12))) (let ((_let_14 (_let_8 _let_13))) (= (_let_2 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_5))) _let_3))) _let_7))) (_let_4 (i_mono_2Etyop_2Enum_2Enum V3m)))) (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_6 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V3m)))) (_let_2 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V3m) V1n)))) _let_3))) (_let_2 ((app_2E2 ((s _let_9) ((app_2E2 (_let_11 ((c_2Ecombin_2EFAIL_2E2 (_let_11 c_2Erich__list_2ELASTN_2E0)) _let_7))) _let_5))) _let_3)))))))))))))))))))) (forall ((V0longer_20than_20list Bool) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_2 ((c_2Erich__list_2ELASTN_2E2 _let_5) _let_3)) (_let_2 ((c_2Ebool_2ELET_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_5))) _let_3))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0longer_20than_20list))))) (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2)) (_let_1 (((c_2Erich__list_2ESEG_2E3 _let_4) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EFCOMM_2E2 ((s (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s (_let_1 (_let_1 A_27a))) V1g_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ERIGHT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V1g_2E0)) ((s A_27a) V2e_2E0)))) (forall ((V3l1_2E0 u) (V4l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((c_2Elist_2EFOLDL_2E3 ((s (_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) (_let_3 V2e_2E0)))) (let ((_let_6 (_let_1 V3l1_2E0))) (let ((_let_7 (_let_4 A_27a))) (= (_let_3 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_2)))) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) V1g_2E0)) (_let_3 (_let_5 _let_6))))) (_let_3 (_let_5 _let_2))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27state))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_3) _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 _let_3)) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Erich__list_2EBUTLASTN_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V2l_27 Bool) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_5 _let_7)) F0_2E0)) _let_3))) (_let_4 (i_mono_2Etyop_2Emin_2Ebool V2l_27))))) _let_2))) (or V2l_27 (= _let_3 _let_2))))))))))) (forall ((V0y_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s A_27a) V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2EIN_2E2 _let_3) ((s _let_5) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) F0_2E0)) _let_3))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) _let_1))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ESNOC_2E0)) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) (((c_2Erich__list_2ESCANR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) ((s A_27b) V1e_2E0)) _let_1))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1i mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Estring_2ESUBSTRING ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0s) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1i) V2n))) (((mono_2Ec_2Erich__list_2ESEG_2Emono_2Etyop_2Estring_2Echar V2n) V1i) V0s))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_5) (= (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) V0n)))) _let_4) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_5 _let_3))) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2))))))))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_4 c_2Epred__set_2EEMPTY_2E0))))) _let_3)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27state) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1l1_2E0)) _let_2)))) _let_2)))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) ((tyop_2Epair_2Eprod A_27b) A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Equotient_2E_3F_21_21_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_21_2E1 _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_1)))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 A_27a)) V1f2_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f1_2E0))) (let ((_let_6 (c_2Elist_2EMAP_2E2 _let_4))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_7 ((c_2Elist_2EFILTER_2E2 _let_5) (_let_7 (_let_6 _let_2)))) (_let_7 (_let_6 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EFCOMM_2E2 ((s (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s (_let_1 (_let_1 A_27a))) V1g_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ERIGHT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V1g_2E0)) ((s A_27a) V2e_2E0)))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V3l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_6) _let_4) ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s (_let_5 (_let_5 A_27a))) V1g_2E0)) _let_4) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) ((c_2Elist_2EFOLDL_2E2 _let_6) _let_4))) _let_2)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 _let_8))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (let ((_let_9 (_let_7 _let_8))) (= (_let_3 (((c_2Ebool_2ECOND_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) c_2Ebool_2ECOND_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27x) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2b_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1a_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_9 (s tyop_2Enum_2Enum))) (let ((_let_10 (c_2Elist_2ETAKE_2E2 (_let_9 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_11 (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_6))))) (=> (and (= _let_11 (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_3)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_11)) (= (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 (_let_10 _let_6))) (_let_2 (_let_10 _let_3)))))) (_let_8 (_let_10 (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Elist_2EMAP_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ESTRORD_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESTRORD_2E0)) _let_4)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUBLIST_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27state))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2Ebool_2ELET_2E2 _let_7) _let_3)) (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) c_2Ebool_2ELET_2E0)) _let_7))) _let_3)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0))))) V1n) (forall ((V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 _let_3))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2))))))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ewot_2Esuccl_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewot_2Esuccl_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2ESUB__BAG_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 _let_3)) V1f_2E0))) (let ((_let_6 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) A_27a))) (let ((_let_8 (s (tyop_2Eoption_2Eoption _let_7)))) (= (_let_8 (c_2Ellist_2ELTL__HD_2E1 ((s _let_6) ((c_2Ellist_2ELUNFOLD_2E2 _let_5) _let_1)))) (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) ((c_2Epair_2E_23_23_2E2 ((s (_let_4 _let_6)) (c_2Ellist_2ELUNFOLD_2E1 _let_5))) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Ecombin_2EI_2E0)))) ((s _let_3) ((app_2E2 _let_5) _let_1)))))))))))))) (and (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX mono_2Ec_2Enum_2E0) V0l) V0l)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX _let_1) V2l) ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX _let_2) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum _let_2) V2l)))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (= ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V3n))) V4l) ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX _let_1) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum _let_1) V4l)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2l_27 Bool) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_4))) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V2l_27))))) _let_1))) (and V2l_27 (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Elist_2EEVERY_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_1)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1xs_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1xs_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_1))) (= (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_3))) _let_4)) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun A_27a) _let_1))) F0_2E0)) (_let_2 c_2Elist_2ENIL_2E0)) _let_3)) _let_3))))))) (= (_let_330 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_330 c_2Epair_2Epair__CASE_2E0)) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27d) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_4)) c_2Erich__list_2ELIST__ELEM__COUNT_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2EASSOC_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2EASSOC_2E0)) _let_3))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)) (_let_2 (c_2Elist_2ELAST_2E1 _let_1)))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_2)) (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (and (= (_let_2 (c_2Ellist_2EtoList_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) c_2Elist_2ENIL_2E0)))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_3)))) (let ((_let_5 ((s A_27b) V0h_2E0))) (= (_let_4 (c_2Ellist_2EtoList_2E1 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_2)))) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (c_2Elist_2ECONS_2E1 _let_5))) (_let_4 (c_2Ellist_2EtoList_2E1 _let_2))))))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0l_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (= (_let_3 (c_2Elist_2EFLAT_2E1 _let_2)) (_let_3 (((c_2Elist_2EFOLDR_2E3 ((s (_let_4 (_let_4 _let_1))) c_2Elist_2EAPPEND_2E0)) (_let_3 c_2Elist_2ENIL_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0l2_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))))) V1n) (forall ((V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l1_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V1l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (s _let_4))) (= (_let_5 ((c_2Elist_2EMAP_2E2 _let_3) ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_5 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_4)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (c_2Elist_2EMAP_2E1 _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_1))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_1) _let_1))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_2)) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (= V1m (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1x))))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1x) V0n) (= (_let_5 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)))) (_let_5 (_let_4 _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V2m) V3k)) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V3k))) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EMMAP_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EMMAP_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_2)) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (= (mono_2Ec_2Elist_2ESUM (mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Enum_2Enum V0l)) (mono_2Ec_2Elist_2ESUM ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Elist_2ESUM) V0l)))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2c_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_1 V0a_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 (_let_1 (_let_5 _let_3))) (_let_1 (_let_5 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 (tyop_2Elist_2Elist _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2l_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_27_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_3))) _let_4)) (_let_2 ((c_2Elist_2ESNOC_2E2 ((s A_27b) ((app_2E2 _let_7) _let_4))) _let_3))))))))))))) (forall ((V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) (_let_4 _let_2)))) (= (_let_3 ((c_2Elist_2EMAP_2E2 _let_6) _let_1)) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_3 c_2Elist_2ENIL_2E0)) _let_1))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Ebag_2EBAG__INTER_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ebag_2EBAG__INTER_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_4) _let_2)) (_let_5 (c_2Elist_2EHD_2E1 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_4) _let_2)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0ll_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2))) V1n) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))))))))) (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2)))))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0P_2E0))) (= (_let_2 ((c_2Erich__list_2EPREFIX_2E2 _let_5) _let_3)) (_let_2 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) ((c_2Erich__list_2ESPLITP_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_5))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 V1l2_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2)))) (= (_let_3 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4)))) (_let_3 (c_2Elist_2ELAST_2E1 _let_2))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l2_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0))))) (forall ((V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l1_2E0)) _let_2)))) (_let_1 (_let_3 _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EFCOMM_2E2 ((s (_let_1 _let_2)) V0g_2E0)) ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ELEFT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V0g_2E0)) ((s A_27a) V2e_2E0)))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V3l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) V1f_2E0))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_3 (((c_2Elist_2EFOLDR_2E3 ((s (_let_5 _let_6)) V0g_2E0)) _let_4) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) ((c_2Elist_2EFOLDR_2E2 _let_7) _let_4))) _let_2)))))))))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1e_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_5) _let_3) (_let_6 ((c_2Elist_2ECONS_2E2 _let_1) (_let_6 c_2Elist_2ENIL_2E0))))) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2l_2E0 u) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V2l_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s (_let_7 _let_1)) V1e_2E0))) (let ((_let_9 ((s (_let_7 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2EEncode_2Ewf__encoder_2E2 _let_9) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Elist_2EEVERY_2E2 _let_9) _let_4)))) (= (_let_6 (((c_2EDecode_2Edecode__list_2E3 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_9))) ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_9) _let_8))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 ((c_2EEncode_2Eencode__list_2E2 _let_8) _let_4)))) V3t))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3t))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_1 V1l1_2E0))) (let ((_let_7 (mono_2Ec_2Eprim__rec_2E_3C V0n))) (=> (and (_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_6) _let_2)))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (_let_3 ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Estate__transformer_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) _let_2)) _let_2)))) (= (_let_328 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum)) (_let_328 c_2Elist_2EMAP_2E0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) _let_2))) (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_4) _let_2)))) _let_2))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (=> (and (V1p V2x) ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) V1p)) (= ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2EDecode_2Edecode__bnum V0m) V1p)) V2x) ((mono_2Ec_2EEncode_2Eencode__bnum V0m) V2x)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEXISTS_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEXISTS_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST (mono_2Ec_2Enum_2ESUC V0n)) ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum V0n) (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)))) _let_324) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27d) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_4) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_3 V1a_2E0)) (_let_3 V2a0_2E0)) (_let_2 V3f_2E0)) (_let_2 V4f0_2E0))))))))))) (forall ((V5s_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V5s_2E0)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f1_2E0 u) (V1f2_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 (_let_3 V0f1_2E0)))) (let ((_let_5 (c_2Elist_2EFILTER_2E2 (_let_3 V1f2_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))))) (mono_2Ec_2Eprim__rec_2EPRE (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s A_27a) V0e_2E0))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_2) _let_1)))) mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_3) (= (_let_4 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1)) (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_3) V0n))))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V2x_2E0 u) (V3l_27 Bool)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_3))) _let_2))) V3l_27) (or V3l_27 (= _let_3 _let_2)))))))))) (forall ((V0y_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s A_27a) V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d)) (and (forall ((V3x1_2E0 u) (V4l1_2E0 u) (V5x2_2E0 u) (V6l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l1_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3x1_2E0))) (let ((_let_5 (_let_1 V6l2_2E0))) (let ((_let_6 (_let_3 V5x2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 _let_5) _let_2))) (= _let_4 _let_6)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))))))))))))) (forall ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) (_let_1 V2l_2E0)))) (_let_1 c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2EF))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 V0l_2E0)))) mono_2Ec_2Ebool_2ET))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) ((tyop_2Epair_2Eprod _let_3) _let_3))))) (= (_let_4 (c_2Erich__list_2ESPLITL_2E1 _let_2)) (_let_4 (c_2Erich__list_2ESPLITP_2E1 (_let_1 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_2)))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1a0_2E0 u) (V2a1_2E0 u) (V3a2_2E0 u) (V4a3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2a1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_5 (app_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_1 V1a0_2E0))) (let ((_let_8 (s (_let_3 (_let_3 A_27a))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Esemi__ring_2Esemi__ring__size_2E2 _let_4) ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_7) _let_2) (_let_8 V3a2_2E0)) (_let_8 V4a3_2E0)))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_7)))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 c_2Elist_2ENIL_2E0) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1l_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) ((tyop_2Epair_2Eprod _let_3) _let_3)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erich__list_2ESPLITP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Erich__list_2ESPLITP_2E0)) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Emin_2E_3D_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Emin_2E_3D_2E0)) _let_1)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 V2l1_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (and (= V0n (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))))) (= (_let_3 ((c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)))) (_let_3 (c_2Elist_2EHD_2E1 _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (s _let_1))) (= (_let_5 ((c_2Elist_2EFILTER_2E2 _let_4) (_let_5 (c_2Elist_2EFLAT_2E1 _let_3)))) (_let_5 (c_2Elist_2EFLAT_2E1 (_let_2 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (c_2Elist_2EFILTER_2E1 _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 ((s A_27a) V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_6 A_27b))) (let ((_let_10 (_let_4 _let_9))) (= (_let_1 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_8))) _let_2))) _let_3)) (_let_1 ((app_2E2 ((s _let_5) ((app_2E2 _let_8) _let_3))) _let_2)))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_5 A_27b)))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_5 (_let_6 A_27b)))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Erich__list_2EUNZIP__SND_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Erich__list_2EUNZIP__SND_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1u_2E0 u)) (= (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1u_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2))))))))))) (forall ((V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V3t_2E0))) (let ((_let_4 (_let_2 V2s_2E0))) (let ((_let_5 (_let_2 V1u_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)))) (let ((_let_8 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_4)) (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_5)))) (= _let_4 _let_3))))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0l_2E0))) (=> (not (= _let_3 _let_2)) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_3)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2ELAST_2E1 _let_3))) _let_2)))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V1e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_1))) ((mono_2Ec_2Eprim__rec_2E_3C V3m) V2n)) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3m))) _let_1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (s A_27a))) (= (_let_4 (_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 V2x_2E0)) _let_2)))) (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 (tyop_2EEncode_2Etree A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 ((s (_let_5 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_7 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) _let_1)))))) (= (_let_7 ((c_2EDecode_2Edecode__tree_2E2 _let_6) _let_3)) (_let_7 ((c_2EDecode_2Eenc2dec_2E2 _let_6) ((s (_let_5 _let_1)) (c_2EEncode_2Eencode__tree_2E1 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l2_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))))) V1n) (forall ((V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_3))) _let_2)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Erich__list_2Ecommon__prefixes_2E0)) _let_3))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1l1_2E0))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))))) (let ((_let_6 ((mono_2Ec_2Earithmetic_2E_2B V2n) V0m))) (let ((_let_7 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m)))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) _let_6) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) ((mono_2Ec_2Earithmetic_2E_2B _let_5) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) ((mono_2Ec_2Eprim__rec_2E_3C V0m) _let_5)) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_7) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) V0m)))) _let_7) _let_4))) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_6) _let_5)))) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_3))) (= _let_2 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebag_2EFINITE__BAG_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebag_2EBAG__CARD__RELn_2E2 _let_1) ((s tyop_2Enum_2Enum) (c_2Ebag_2EBAG__CARD_2E1 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2EMAP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Elist_2EMAP_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (= (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3)) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) (_let_2 c_2Elist_2ENIL_2E0)))) _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (_let_4 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))) (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 (_let_4 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l mono_2Etyop_2Enum_2Enum) (V1g_2E0 u) (V2f_2E0 u) (V3P_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0l)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V3P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s (_let_2 A_27a)) V2f_2E0)) _let_1))) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EGENLIST_2E2 ((s (_let_2 A_27b)) V1g_2E0)) _let_1))))) (forall ((V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4i)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4i) V0l) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V3P_2E0)) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2f_2E0)) _let_1))))) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V1g_2E0)) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EUNZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EUNZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m)))) (let ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 _let_5) _let_4) _let_2)) (_let_1 ((c_2Elist_2ETAKE_2E2 _let_5) (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (= (_let_2 (((c_2Elist_2ELUPDATE_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) c_2Elist_2ELUPDATE_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Elist_2EALL__DISTINCT_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))) (let ((_let_6 (c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1m) _let_5)))) _let_2))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0b_2E0 u) (V1a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0b_2E0))) (let ((_let_4 (_let_2 V1a_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 _let_5))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_3))) _let_4)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3)))))))))))))) (forall ((V0b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) F0_2E0)) ((s _let_1) V0b_2E0)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2c_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) (_let_1 V1b_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 V1l1_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2)))) (= (_let_3 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)))) (_let_3 (c_2Elist_2EHD_2E1 _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 (_let_3 (c_2Emin_2E_3D_2E1 _let_2))) _let_1))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27c) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Erich__list_2ELIST__ELEM__COUNT_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (or (= V1n mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_1)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2l_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_27_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_3))) _let_4)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_4))) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3))) _let_3))))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) (_let_4 _let_1)))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_6) _let_3)) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) ((s A_27a) V0e_2E0)) (_let_1 V1b_2E0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V3l_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_27_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_4))) _let_3)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_4))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (_let_4 ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Erich__list_2EPREFIX_2E2 _let_6) _let_3)) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2m) (= (_let_1 (_let_4 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (= (_let_3 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_4) _let_2)))) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))) _let_4) (_let_3 (c_2Elist_2EHD_2E1 _let_2)))))))))) (= (_let_326 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool)) (_let_326 c_2Elist_2EFOLDR_2E0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)))) (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)))))) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (= (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2))))))))))) (exists ((V4g_2E0 u)) (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V4g_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)))) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))) _let_2)))) (forall ((V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V1l_2E0))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 c_2Elist_2ENIL_2E0)) _let_2)) _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ECONS_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) c_2Elist_2ECONS_2E0)) _let_1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l1_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0))))) V1n) (forall ((V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_5) _let_2)) (_let_1 (((c_2Erich__list_2ESEG_2E3 _let_5) (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) _let_2)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Elist_2EALL__DISTINCT_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_9 (_let_5 _let_8))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2Elrep__ok_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ellist_2Elrep__ok_2E0)) _let_2)))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM V0l) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2E_2B) mono_2Ec_2Enum_2E0) V0l))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1p2_2E0 u) (V2p1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1p2_2E0))) (let ((_let_4 (_let_2 V2p1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_6 V0s_2E0))) (let ((_let_8 (_let_6 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_7)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_8))) (not (= _let_7 (_let_6 c_2Epred__set_2EEMPTY_2E0)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_6 (c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) _let_5) (= (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) _let_3)))) _let_2))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1P_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Elist_2EMAP_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (c_2Elist_2EFILTER_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V1P_2E0)))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V1P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a_2E0 u)) (let ((_let_1 ((s A_27a) V2a_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_3 ((c_2Elist_2EAPPEND_2E2 (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1))) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_1)))) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)))) _let_1))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d)) (and (forall ((V0acc_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 (_let_2 V0acc_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_5 (((c_2Erich__list_2ESPLITP__AUX_2E3 _let_4) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_3)) (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_3))))))))) (forall ((V2acc_2E0 u) (V3P_2E0 u) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_5 ((s A_27a) V4h_2E0))) (let ((_let_6 (c_2Elist_2ECONS_2E2 _let_5))) (let ((_let_7 (_let_2 V2acc_2E0))) (let ((_let_8 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_9 (_let_2 (_let_6 _let_3)))) (= (_let_8 (((c_2Erich__list_2ESPLITP__AUX_2E3 _let_7) _let_4) _let_9)) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_5))) (_let_8 ((c_2Epair_2E_2C_2E2 _let_7) _let_9))) (_let_8 (((c_2Erich__list_2ESPLITP__AUX_2E3 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_7) (_let_2 (_let_6 (_let_2 c_2Elist_2ENIL_2E0)))))) _let_4) _let_3))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Erich__list_2ETL__T_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Erich__list_2ETL__T_2E0)) _let_3))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2a_2E0))) (let ((_let_4 (_let_2 V3b_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 _let_5))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_3))) _let_4)) (_let_6 ((c_2Epair_2E_2C_2E2 (_let_2 (c_2Elist_2EREVERSE_2E1 _let_4))) (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)))))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (= (_let_7 ((c_2Erich__list_2ESPLITR_2E2 _let_5) _let_3)) (_let_7 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) (c_2Epair_2EUNCURRY_2E1 ((s (_let_8 (_let_8 _let_6))) F0_2E0)))) (_let_7 ((c_2Erich__list_2ESPLITP_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_5))) (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_3))) _let_3))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2ECOMM_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)))) (forall ((V1e_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EMONOID_2E2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)) ((s A_27a) V1e_27_2E0)))) (forall ((V2e_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V3l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s (_let_3 _let_4)) V0f_2E0))) (let ((_let_6 (c_2Elist_2EFOLDL_2E3 _let_5))) (let ((_let_7 (_let_2 V2e_2E0))) (= (_let_2 ((_let_6 _let_7) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_7))) (_let_2 ((_let_6 (_let_2 V1e_27_2E0)) _let_1))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) _let_1)) A_27a))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) _let_5) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 _let_6) (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)) (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_6) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_5) _let_3)))) _let_2))))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_3 ((c_2Erich__list_2EELL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_2)) (_let_3 (c_2Elist_2EHD_2E1 _let_2))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1x_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (_let_1 V0l1_2E0))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_4))) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__option_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__option_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_4 (_let_2 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_4))) (= (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_4)) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (c_2Elist_2EisPREFIX_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V2c_2E0)))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_4))) (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 _let_4)) _let_3))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0d_2E0 u) (V1b_2E0 u)) (= (forall ((V2a_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 V0d_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2a_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1b_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (_let_1 V3c_2E0))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1b_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0d_2E0))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_4) (= (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n))))) _let_2)))))))))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Elist_2EEVERY_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (= (_let_4 ((c_2Ecombin_2EFAIL_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ecombin_2EFAIL_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (= (_let_325 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum)) (_let_325 c_2Elist_2EREVERSE_2E0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EUNZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EUNZIP_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Erich__list_2EBUTLASTN_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Erich__list_2Ecommon__prefixes_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) c_2Elist_2ENIL_2E0)) (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_2 V0s_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s ((tyop_2Epair_2Eprod _let_5) _let_4)))) (let ((_let_7 (_let_6 (c_2Elist_2EUNZIP_2E1 _let_3)))) (let ((_let_8 (s _let_4))) (let ((_let_9 ((s _let_1) V0x_2E0))) (let ((_let_10 (s _let_5))) (= (_let_6 (c_2Elist_2EUNZIP_2E1 (_let_2 ((c_2Elist_2ESNOC_2E2 _let_9) _let_3)))) (_let_6 ((c_2Epair_2E_2C_2E2 (_let_10 ((c_2Elist_2ESNOC_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_9))) (_let_10 (c_2Epair_2EFST_2E1 _let_7))))) (_let_8 ((c_2Elist_2ESNOC_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_9))) (_let_8 (c_2Epair_2ESND_2E1 _let_7)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_5 _let_6))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_8))) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 V1x_2E0)) _let_2)))) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V0n)))) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (c_2Elist_2EisPREFIX_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Elist_2EisPREFIX_2E2 _let_2))) (let ((_let_7 (_let_1 V0l_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_7)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_2 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0x_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 ((c_2Efcp_2Efcp__index_2E2 _let_2) _let_1)) (_let_3 ((c_2Efcp_2Edest__cart_2E2 _let_2) ((s (tyop_2Efcp_2Efinite__image A_27b)) (c_2Efcp_2Efinite__index_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2ESND_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2ESND_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27b) V2x_2E0)) _let_2)))) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))))))) (and _let_324 (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST (mono_2Ec_2Enum_2ESUC V0n)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2ESUC) (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ESNOC_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ESNOC_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2EFST_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2EFST_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EisPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n) ((mono_2Ec_2Erich__list_2ECOUNT__LIST__AUX V0n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) (_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ellist_2ELUNFOLD_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ellist_2ELUNFOLD_2E0)) _let_3))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V0l_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 (s _let_1))) (= (_let_5 (c_2Elist_2EFLAT_2E1 (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)))) (_let_5 (c_2Elist_2EFLAT_2E1 (_let_4 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 _let_3))) (let ((_let_5 (_let_1 (_let_4 _let_2)))) (let ((_let_6 ((s A_27a) V1x_2E0))) (let ((_let_7 (c_2Elist_2ESNOC_2E2 _let_6))) (= (_let_1 (_let_4 (_let_1 (_let_7 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_6))) (_let_1 (_let_7 _let_5))) _let_5))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3r_2E0 u) (V4s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4s_2E0))) (let ((_let_3 (_let_1 V3r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s (_let_4 A_27b)) V1abs_2E0)))) (let ((_let_11 (s A_27b))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_2))) (= (_let_11 (_let_10 _let_3)) (_let_11 (_let_10 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1L_2E0 u) (V2M_2E0 u) (V3N_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3N_2E0))) (let ((_let_3 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_1 V2M_2E0)))) (let ((_let_5 (_let_1 V1L_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_5) (_let_1 (_let_4 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_3 _let_5))) (_let_1 (_let_4 (_let_1 (_let_3 _let_2))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m)))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_7 ((s (tyop_2Ellist_2Ellist A_27a)) V2ll_2E0))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_7)) (_let_6 (c_2Eoption_2ESOME_2E1 _let_3)))) (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 _let_5) _let_7)) (_let_6 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Elist_2ETAKE_2E2 _let_5) _let_3)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l2_2E0 u)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0))))) (forall ((V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (s A_27a))) (= (_let_4 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l1_2E0)) _let_2)))) (_let_4 (_let_3 _let_2)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((s A_27b) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) (_let_4 A_27b)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Erich__list_2ESCANR_2E3 _let_6) _let_3) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Erich__list_2ESCANR_2E0)) _let_6))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (= (_let_1 ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1x))) ((s A_27a) V0y_2E0))) (_let_1 c_2Elist_2ENIL_2E0)) (= V1x mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1e_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (((c_2Elist_2EFOLDR_2E3 _let_5) _let_2) (_let_6 ((c_2Elist_2ECONS_2E2 _let_3) (_let_6 c_2Elist_2ENIL_2E0))))) (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Erich__list_2ESPLITR_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Erich__list_2ESPLITR_2E0)) _let_4))) _let_2))))))))))) (= (_let_323 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_323 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (_let_3 ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erich__list_2ESPLITP__AUX_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Erich__list_2ESPLITP__AUX_2E0)) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V2z_2E0))) (let ((_let_4 (c_2Elist_2EisPREFIX_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (or (= _let_3 _let_6) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_2)))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 (_let_3 (c_2Emin_2E_3D_2E1 _let_2))) _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (c_2Elist_2ESNOC_2E2 ((s A_27a) V2x_2E0)))) (= (_let_1 (_let_3 (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 (_let_3 _let_2)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 _let_1) _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_2) _let_1))) mono_2Ec_2Enum_2E0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_4 (_let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_4 (c_2Elist_2EREVERSE_2E1 (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a_2E0 u)) (let ((_let_1 ((s A_27a) V2a_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_3 ((c_2Elist_2EDROP_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_1)))) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1m) V0n)))) _let_1))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_5 (_let_4 V1l_2E0))) (= (_let_2 (c_2Elist_2EFLAT_2E1 (_let_4 ((c_2Elist_2ESNOC_2E2 _let_3) _let_5)))) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (c_2Elist_2EFLAT_2E1 _let_5))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Erich__list_2EUNZIP__FST_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Erich__list_2EUNZIP__FST_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ESNOC_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ESNOC_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2x_2E0 u) (V3l_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_27_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_4))) _let_3)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27b) ((app_2E2 _let_7) _let_4))) _let_3))))))))))))) (forall ((V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 ((tyop_2Emin_2Efun _let_2) _let_2)))) (= (_let_3 ((c_2Elist_2EMAP_2E2 _let_6) _let_1)) (_let_3 (((c_2Elist_2EFOLDR_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_3 c_2Elist_2ENIL_2E0)) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EFOLDR_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EFOLDR_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V4a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (_let_1 V4a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0ys_2E0 u) (V1xs_2E0 u) (V2x_2E0 u) (V3b_2E0 u) (V4a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (c_2Epred__set_2EINSERT_2E2 (_let_4 c_2Elist_2ENIL_2E0)))) (let ((_let_6 (_let_2 (_let_5 _let_3)))) (let ((_let_7 (c_2Epred__set_2EINSERT_2E2 (_let_4 V2x_2E0)))) (let ((_let_8 (tyop_2Elist_2Elist A_27b))) (let ((_let_9 (tyop_2Emin_2Efun _let_8))) (let ((_let_10 (s (_let_9 tyop_2Emin_2Ebool)))) (let ((_let_11 (_let_10 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_12 (s _let_8))) (let ((_let_13 (_let_12 V0ys_2E0))) (let ((_let_14 (_let_12 V1xs_2E0))) (let ((_let_15 (s A_27b))) (let ((_let_16 (_let_15 V4a_2E0))) (let ((_let_17 (_let_15 V3b_2E0))) (let ((_let_18 (tyop_2Emin_2Efun A_27b))) (let ((_let_19 (_let_18 tyop_2Emin_2Ebool))) (and (= (_let_10 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_10 ((c_2Epred__set_2EINSERT_2E2 (_let_12 ((c_2Elist_2ECONS_2E2 _let_16) _let_14))) (_let_10 ((c_2Epred__set_2EINSERT_2E2 (_let_12 ((c_2Elist_2ECONS_2E2 _let_17) _let_13))) _let_11)))))) (_let_10 ((c_2Epred__set_2EINSERT_2E2 (_let_12 c_2Elist_2ENIL_2E0)) (_let_10 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_18 _let_19)) F0_2E0)) _let_16))) _let_17))) (_let_10 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_9 _let_8)) (c_2Elist_2ECONS_2E1 _let_16))) (_let_10 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_10 ((c_2Epred__set_2EINSERT_2E2 _let_14) (_let_10 ((c_2Epred__set_2EINSERT_2E2 _let_13) _let_11))))))))) _let_11))))) (= (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_2 (_let_7 _let_6)))) _let_6) (= (_let_2 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_2 (_let_5 (_let_2 (_let_7 _let_3)))))) _let_6)))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d)) (and (forall ((V2f_2E0 u) (V3e_2E0 u) (V4x_2E0 u) (V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 ((s A_27a) V4x_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V3e_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) V2f_2E0))) (let ((_let_8 (c_2Erich__list_2ESCANL_2E3 _let_7))) (let ((_let_9 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_9 ((_let_8 _let_5) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))) (_let_9 ((c_2Elist_2ECONS_2E2 _let_5) (_let_9 ((_let_8 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_5))) _let_3))) _let_2))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s A_27b) V1e_2E0))) (= (_let_1 (((c_2Erich__list_2ESCANL_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27b))) V0f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_5 V1l1_2E0))) (let ((_let_7 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0f_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V3n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_6) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_5 (_let_4 _let_6))) (_let_1 (_let_4 _let_2))))))))))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Erich__list_2Elongest__prefix_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Erich__list_2Elongest__prefix_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1l2_2E0))))) (forall ((V2x1_2E0 u) (V3x2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0l1_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 (s (tyop_2Elist_2Elist _let_8)))) (let ((_let_10 ((s A_27b) V3x2_2E0))) (let ((_let_11 ((s A_27a) V2x1_2E0))) (= (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Elist_2ESNOC_2E2 _let_11) _let_6))) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_10) _let_3)))))) (_let_9 ((c_2Elist_2ESNOC_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_11) _let_10))) (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3)))))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0l1_2E0 u) (V1h_2E0 u) (V2l2_2E0 u) (V3l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l3_2E0))) (let ((_let_3 (_let_1 V2l2_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l1_2E0)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_5 (_let_1 (_let_4 _let_3))))) _let_2)) (_let_1 (_let_5 (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EFCOMM_2E2 ((s (_let_1 _let_2)) V0g_2E0)) ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ELEFT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V0g_2E0)) ((s A_27a) V2e_2E0)))) (forall ((V3l1_2E0 u) (V4l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V1f_2E0)) (_let_3 V2e_2E0)))) (let ((_let_7 (_let_1 V3l1_2E0))) (= (_let_3 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_2)))) (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0g_2E0)) (_let_3 (_let_6 _let_7))))) (_let_3 (_let_6 _let_2)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2ELAST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2ELAST_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_4) _let_2)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (= (_let_248 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Emin_2Ebool)) (_let_248 c_2Elist_2EEVERY_2E0)) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2EFILTER_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Elist_2EFILTER_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b1_2E0 u) (V2b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 _let_3))) (let ((_let_5 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_6 (_let_1 (_let_5 (_let_1 (_let_4 _let_2)))))) (and (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_5 _let_3))) _let_2)) _let_6) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) _let_6))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 X1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_1 V1l1_2E0)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (let ((_let_3 (_let_1 (_let_2 (_let_1 V1l_2E0))))) (= (_let_1 (_let_2 _let_3)) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V1b V2t)) ((F0 V1b) V2t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F0 V1b)) V0t0) (and (forall ((V6a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V6a) V1b) V0t0) mono_2Ec_2Ebool_2EF)) (forall ((V8a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V8a) V1b) V0t0) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V8a) V0t0))) (forall ((V7a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V7a) V1b) V0t0) mono_2Ec_2Ebool_2EF)) (forall ((V5a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V5a) V1b) V0t0) mono_2Ec_2Ebool_2ET)) (forall ((V4a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V4a) V1b) V0t0) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V4a) V0t0))) (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V3a) V1b) V0t0) mono_2Ec_2Ebool_2ET))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 V0l_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Esome_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Esome_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= (or V3P2 V2P1) ((F0 V2P1) V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V3P2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s A_27b) V2x_2E0))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) ((s A_27a) V0i_2E0)))) _let_2))) (= (forall ((V3v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3v_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))) (= _let_2 (_let_1 V0i_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2)))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_2) _let_1))) (forall ((V2v_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0)))) (exists ((V3fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))))) (= (forall ((V4v_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V4v_2E0))))) (exists ((V5fv_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V5fv_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_2) _let_1)))) (forall ((V12i_2E0 u) (V13P_2E0 u)) (= (forall ((V14v_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V13P_2E0)) ((s A_27b) V14v_2E0)))) (exists ((V15fv_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V14v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V12i_2E0)) ((s A_27a) V15fv_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V12i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V13P_2E0)))))) (forall ((V16i_2E0 u) (V17P_2E0 u)) (= (forall ((V18v_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V17P_2E0)) ((s A_27b) V18v_2E0))))) (exists ((V19fv_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V18v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V16i_2E0)) ((s A_27a) V19fv_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V16i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V17P_2E0)))))) (forall ((V9i_2E0 u) (V10P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V9i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V10P_2E0)))) (forall ((V11fv_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V10P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V9i_2E0)) ((s A_27a) V11fv_2E0)))))))))) (forall ((V6i_2E0 u) (V7P_2E0 u)) (= (forall ((V8fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V7P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V6i_2E0)) ((s A_27a) V8fv_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V6i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V7P_2E0))))))))))) (forall ((A_27a d) (A_27b d) (F9_2E0 u) (F6_2E0 u) (F3_2E0 u) (F26_2E0 u) (F23_2E0 u) (F21_2E0 u) (F19_2E0 u) (F1_2E0 u) (F14_2E0 u) (F8_2E0 u) (F7_2E0 u) (F5_2E0 u) (F4_2E0 u) (F25_2E0 u) (F24_2E0 u) (F22_2E0 u) (F20_2E0 u) (F2_2E0 u) (F18_2E0 u) (F17_2E0 u) (F15_2E0 u) (F13_2E0 u) (F0_2E0 u) (F16_2E0 u) (F12_2E0 u) (F11_2E0 u) (F10_2E0 u)) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V15x_2E0 u)) (let ((_let_1 ((s A_27b) V15x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V5P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F9_2E0)) _let_6))) _let_4))) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F6_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F3_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27b) V21x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V5P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F26_2E0)) _let_6))) _let_4))) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V32x_2E0 u)) (let ((_let_1 ((s A_27b) V32x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F23_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V30x_2E0 u)) (let ((_let_1 ((s A_27b) V30x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V5P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F21_2E0)) _let_6))) _let_4))) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V28x_2E0 u)) (let ((_let_1 ((s A_27b) V28x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V5P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F19_2E0)) _let_6))) _let_4))) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V0q Bool) (V23x_2E0 u)) (let ((_let_1 ((s A_27b) V23x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V5P_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 _let_5) _let_1))) V0q) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F14_2E0)) _let_5))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V0q))))) _let_1))))))))))) (=> (forall ((V4Q_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27b) V14x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F8_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F5_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27b) V19x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F25_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V17x_2E0 u)) (let ((_let_1 ((s A_27b) V17x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F24_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V31x_2E0 u)) (let ((_let_1 ((s A_27b) V31x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F22_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V29x_2E0 u)) (let ((_let_1 ((s A_27b) V29x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F20_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V27x_2E0 u)) (let ((_let_1 ((s A_27b) V27x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F18_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27b) V26x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F17_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V24x_2E0 u)) (let ((_let_1 ((s A_27b) V24x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F15_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V22x_2E0 u)) (let ((_let_1 ((s A_27b) V22x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F13_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1p Bool) (V4Q_2E0 u) (V25x_2E0 u)) (let ((_let_1 ((s A_27b) V25x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6)) F16_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_4))) _let_1))) (=> V1p (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (=> (forall ((V2iK_2E0 u) (V20xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F12_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V20xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V18xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F11_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V18xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V16xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F10_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V16xxx)))) _let_2))))) (forall ((V0q Bool) (V1p Bool) (V2iK_2E0 u) (V3i_2E0 u) (V4Q_2E0 u) (V5P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s (_let_6 _let_7)))) (let ((_let_9 (s _let_7))) (let ((_let_10 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3i_2E0))) (let ((_let_11 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_10))) (let ((_let_14 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_10))) (let ((_let_15 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_10))) (let ((_let_16 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_10))) (let ((_let_17 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_10))) (let ((_let_18 ((s A_27b) V2iK_2E0))) (let ((_let_19 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (let ((_let_20 (s (_let_1 _let_19)))) (let ((_let_21 (s _let_19))) (let ((_let_22 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_23 (_let_22 _let_2))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 F2_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F3_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 F13_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_15 (_let_3 ((app_2E2 ((s _let_23) ((app_2E2 ((s (_let_6 _let_23)) F14_2E0)) _let_5))) (_let_12 (i_mono_2Etyop_2Emin_2Ebool V0q)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_15 (_let_3 ((app_2E2 (_let_9 F15_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_15 (_let_3 ((app_2E2 (_let_9 ((app_2E2 ((s (_let_22 _let_7)) F16_2E0)) (_let_12 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 F20_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_17 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F21_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_17 (_let_3 ((app_2E2 (_let_9 F22_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_17 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F23_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 F17_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 F18_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F19_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_21 ((app_2E2 (_let_20 F11_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 F25_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_21 ((app_2E2 (_let_20 F10_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 F24_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_21 ((app_2E2 (_let_20 F12_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F26_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_17 (_let_3 ((app_2E2 (_let_9 F7_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 F8_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F9_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 F5_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_15 (_let_3 ((app_2E2 (_let_9 F4_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F6_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 F0_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F1_2E0)) _let_5))) _let_4))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1p1_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1p1_2E0))) (= (= _let_4 (_let_3 (c_2Epair_2EFST_2E1 _let_2))) (= (_let_1 ((c_2Epair_2E_2C_2E2 _let_4) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2)))) _let_2))))))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= ((F0 V2P1) V3P2) (and V2P1 V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EdirGraph_2EREACH__LIST_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EdirGraph_2EREACH__LIST_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V2xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V2xxx)))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 ((s A_27a) V0i_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_2) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) _let_3))) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (not (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod (_let_3 (_let_3 tyop_2Emin_2Ebool))) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((F2 (-> mono_2Etyop_2Eone_2Eone Bool)) (F0 (-> mono_2Etyop_2Eone_2Eone Bool)) (F3 (-> mono_2Etyop_2Eone_2Eone Bool)) (F1 (-> mono_2Etyop_2Eone_2Eone Bool)) (F7 (-> Bool Bool)) (F6 (-> Bool Bool)) (F5 (-> Bool Bool)) (F4 (-> Bool Bool))) (=> (forall ((V4ARB mono_2Etyop_2Eone_2Eone)) (= (F2 V4ARB) mono_2Ec_2Ebool_2ET)) (=> (forall ((V0ARB mono_2Etyop_2Eone_2Eone)) (= (F0 V0ARB) mono_2Ec_2Ebool_2ET)) (=> (forall ((V6ARB mono_2Etyop_2Eone_2Eone)) (= (F3 V6ARB) mono_2Ec_2Ebool_2EF)) (=> (forall ((V2ARB mono_2Etyop_2Eone_2Eone)) (= (F1 V2ARB) mono_2Ec_2Ebool_2EF)) (=> (forall ((V7x Bool)) (= (F7 V7x) V7x)) (=> (forall ((V5x Bool)) (= (F6 V5x) V5x)) (=> (forall ((V3x Bool)) (= (F5 V3x) V3x)) (=> (forall ((V1x Bool)) (= (F4 V1x) V1x)) (and ((mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool F2) F6) ((mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool F3) F7) ((mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool F1) F5) ((mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool F0) F4))))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_1)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l_2E0))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))))) (let ((_let_6 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_7 (mono_2Ec_2Earithmetic_2E_3E_3D _let_5))) (let ((_let_8 ((mono_2Ec_2Earithmetic_2E_2B _let_2) V0x))) (let ((_let_9 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_10 (_let_9 _let_2))) (let ((_let_11 (_let_9 _let_6))) (let ((_let_12 ((mono_2Ec_2Earithmetic_2E_2B _let_6) V0x))) (let ((_let_13 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (let ((_let_14 (mono_2Ec_2Earithmetic_2E_3E _let_5))) (let ((_let_15 ((mono_2Ec_2Earithmetic_2E_2B _let_13) V0x))) (let ((_let_16 (_let_9 _let_13))) (let ((_let_17 (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (and (= (exists ((V5e1_2E0 u) (V6e2_2E0 u) (V7e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_2 _let_5)) (= (_let_14 _let_6) (exists ((V12l_27_2E0 u) (V13e1_2E0 u) (V14e2_2E0 u) (V15e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e3_2E0)) (_let_1 V12l_27_2E0)))))))))))) (= (= _let_8 _let_5) (exists ((V44l_27_2E0 u) (V45e1_2E0 u) (V46e2_2E0 u) (V47e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V44l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V45e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V46e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V47e3_2E0)) _let_2))))))))))))) (= (exists ((V48l_27_2E0 u) (V49e1_2E0 u) (V50e2_2E0 u) (V51e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V48l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V49e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V50e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V51e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_10)) (= (exists ((V56e1_2E0 u) (V57e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V56e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V57e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_5 _let_6)) (= (exists ((V60l_27_2E0 u) (V61e1_2E0 u) (V62e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V61e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V62e2_2E0)) (_let_1 V60l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_13) _let_5)) (= (_let_14 _let_13) (exists ((V63l_27_2E0 u) (V64e1_2E0 u) (V65e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V64e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V65e2_2E0)) (_let_1 V63l_27_2E0)))))))))) (= (exists ((V66l_27_2E0 u) (V67e1_2E0 u) (V68e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V67e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V68e2_2E0)) (_let_1 V66l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_5)) (= (exists ((V69l_27_2E0 u) (V70e1_2E0 u) (V71e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V70e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V71e2_2E0)) (_let_1 V69l_27_2E0))))))))) (_let_7 _let_6)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_5) (exists ((V72l_27_2E0 u) (V73e1_2E0 u) (V74e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V72l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V73e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V74e2_2E0)) _let_2))))))))))) (= (exists ((V75l_27_2E0 u) (V76e1_2E0 u) (V77e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V75l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V76e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V77e2_2E0)) _let_2)))))))))) (_let_7 _let_12)) (= (= _let_12 _let_5) (exists ((V87l_27_2E0 u) (V88e1_2E0 u) (V89e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V87l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V88e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V89e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_5 _let_13) (exists ((V96e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V96e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (exists ((V104l_27_2E0 u) (V105e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V105e1_2E0)) (_let_1 V104l_27_2E0)))))) (_let_7 _let_13)) (= (exists ((V106l_27_2E0 u) (V107e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V106l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V107e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_5)) (= (_let_7 _let_15) (exists ((V108l_27_2E0 u) (V109e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V108l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V109e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V110l_27_2E0 u) (V111e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V110l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V111e1_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_5)) (= (exists ((V112l_27_2E0 u) (V113e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V112l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V113e1_2E0)) _let_2))))))) (_let_7 _let_16)) (= (exists ((V114l_27_2E0 u) (V115e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V114l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V115e1_2E0)) _let_2))))))) (= _let_5 _let_15)) (= ((mono_2Ec_2Earithmetic_2E_3E _let_13) _let_5) _let_17) (= _let_17 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) mono_2Ec_2Enum_2E0)) (= _let_17 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_5)) (= _let_17 ((mono_2Ec_2Eprim__rec_2E_3C _let_5) _let_13)) (= _let_17 (= mono_2Ec_2Enum_2E0 _let_5)) (= _let_17 (= _let_5 mono_2Ec_2Enum_2E0)) (= (exists ((V120l_27_2E0 u) (V121e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V120l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V121e1_2E0)) _let_2))))))) (= _let_16 _let_5)) (= (= _let_5 _let_16) (exists ((V118l_27_2E0 u) (V119e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V118l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V119e1_2E0)) _let_2)))))))) (= (= _let_15 _let_5) (exists ((V116l_27_2E0 u) (V117e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V116l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V117e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V102l_27_2E0 u) (V103e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V103e1_2E0)) (_let_1 V102l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_5)) (= (_let_14 mono_2Ec_2Enum_2E0) (exists ((V100l_27_2E0 u) (V101e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V101e1_2E0)) (_let_1 V100l_27_2E0))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_5) (exists ((V98l_27_2E0 u) (V99e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V99e1_2E0)) (_let_1 V98l_27_2E0))))))) (= (exists ((V97e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V97e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_13 _let_5)) (= (= _let_11 _let_5) (exists ((V93l_27_2E0 u) (V94e1_2E0 u) (V95e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V93l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V94e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V95e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V90l_27_2E0 u) (V91e1_2E0 u) (V92e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V90l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V91e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V92e2_2E0)) _let_2)))))))))) (= _let_5 _let_11)) (= (exists ((V84l_27_2E0 u) (V85e1_2E0 u) (V86e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V84l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V85e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V86e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_12)) (= (_let_7 _let_11) (exists ((V81l_27_2E0 u) (V82e1_2E0 u) (V83e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V81l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V82e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V83e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V78l_27_2E0 u) (V79e1_2E0 u) (V80e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V78l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V79e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V80e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_11) _let_5)) (= (exists ((V58e1_2E0 u) (V59e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V58e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V59e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_6 _let_5)) (= (= _let_10 _let_5) (exists ((V52l_27_2E0 u) (V53e1_2E0 u) (V54e2_2E0 u) (V55e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V52l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V53e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V54e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V55e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_5 _let_8) (exists ((V40l_27_2E0 u) (V41e1_2E0 u) (V42e2_2E0 u) (V43e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V40l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V41e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V42e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V43e3_2E0)) _let_2))))))))))))) (= (exists ((V36l_27_2E0 u) (V37e1_2E0 u) (V38e2_2E0 u) (V39e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V36l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V37e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V38e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V39e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_10)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_10) _let_5) (exists ((V32l_27_2E0 u) (V33e1_2E0 u) (V34e2_2E0 u) (V35e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V32l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V33e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V34e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V35e3_2E0)) _let_2))))))))))))) (= (exists ((V28l_27_2E0 u) (V29e1_2E0 u) (V30e2_2E0 u) (V31e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V28l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V29e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V30e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V31e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_8)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_5) (exists ((V24l_27_2E0 u) (V25e1_2E0 u) (V26e2_2E0 u) (V27e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V24l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V25e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V26e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V27e3_2E0)) _let_2))))))))))))) (= (exists ((V20l_27_2E0 u) (V21e1_2E0 u) (V22e2_2E0 u) (V23e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e3_2E0)) (_let_1 V20l_27_2E0))))))))))) (_let_7 _let_2)) (= (exists ((V16l_27_2E0 u) (V17e1_2E0 u) (V18e2_2E0 u) (V19e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e3_2E0)) (_let_1 V16l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) _let_5)) (= (exists ((V8l_27_2E0 u) (V9e1_2E0 u) (V10e2_2E0 u) (V11e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e3_2E0)) (_let_1 V8l_27_2E0))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_6) _let_5)) (= (= _let_5 _let_2) (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (forall ((V2fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V2fv_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) V0R_2E0)) (_let_5 (_let_4 _let_3))))) (_let_5 (_let_4 _let_2))))) (= _let_3 _let_2))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1i_2E0 u) (V0v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0v_2E0))) (let ((_let_3 (_let_1 V1i_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0v_2E0 u) (V1i_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0v_2E0))) (let ((_let_3 (_let_1 V1i_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) _let_3) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0LFINITE_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (=> (and (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ellist_2ELFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0))))) (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V3a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0LFINITE_27_2E0)) _let_2))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> Bool Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (F9_2E0 u) (F6_2E0 u) (F3_2E0 u) (F26_2E0 u) (F23_2E0 u) (F21_2E0 u) (F19_2E0 u) (F1_2E0 u) (F14_2E0 u) (F8_2E0 u) (F7_2E0 u) (F5_2E0 u) (F4_2E0 u) (F25_2E0 u) (F24_2E0 u) (F22_2E0 u) (F20_2E0 u) (F2_2E0 u) (F18_2E0 u) (F17_2E0 u) (F15_2E0 u) (F13_2E0 u) (F0_2E0 u) (F16_2E0 u) (F12_2E0 u) (F11_2E0 u) (F10_2E0 u)) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V15x_2E0 u)) (let ((_let_1 ((s A_27b) V15x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F9_2E0)) _let_4))) _let_6))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F6_2E0)) _let_4))) _let_6))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F3_2E0)) _let_4))) _let_6))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27b) V21x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F26_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V32x_2E0 u)) (let ((_let_1 ((s A_27b) V32x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F23_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V30x_2E0 u)) (let ((_let_1 ((s A_27b) V30x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F21_2E0)) _let_4))) _let_6))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V28x_2E0 u)) (let ((_let_1 ((s A_27b) V28x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F19_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V5P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_6))) _let_4))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V0q Bool) (V23x_2E0 u)) (let ((_let_1 ((s A_27b) V23x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V5P_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (= (or V0q (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F14_2E0)) _let_5))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V0q))))) _let_1))))))))))) (=> (forall ((V4Q_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27b) V14x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F8_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F5_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27b) V19x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F25_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V17x_2E0 u)) (let ((_let_1 ((s A_27b) V17x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F24_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V31x_2E0 u)) (let ((_let_1 ((s A_27b) V31x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F22_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V29x_2E0 u)) (let ((_let_1 ((s A_27b) V29x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F20_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V27x_2E0 u)) (let ((_let_1 ((s A_27b) V27x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F18_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27b) V26x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F17_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V24x_2E0 u)) (let ((_let_1 ((s A_27b) V24x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F15_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V22x_2E0 u)) (let ((_let_1 ((s A_27b) V22x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F13_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1p Bool) (V4Q_2E0 u) (V25x_2E0 u)) (let ((_let_1 ((s A_27b) V25x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (or V1p (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6)) F16_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_4))) _let_1))))))))))) (=> (forall ((V2iK_2E0 u) (V20xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F12_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V20xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V18xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F11_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V18xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V16xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F10_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V16xxx)))) _let_2))))) (forall ((V0q Bool) (V1p Bool) (V2iK_2E0 u) (V3i_2E0 u) (V4Q_2E0 u) (V5P_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 _let_3))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3i_2E0))) (let ((_let_10 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_9))) (let ((_let_11 (_let_8 _let_3))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_4 V4Q_2E0))) (let ((_let_14 (s (_let_8 _let_11)))) (let ((_let_15 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_9))) (let ((_let_16 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_9))) (let ((_let_17 ((s A_27b) V2iK_2E0))) (let ((_let_18 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (let ((_let_19 (s (_let_2 _let_18)))) (let ((_let_20 (s _let_18))) (let ((_let_21 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_9))) (let ((_let_22 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_9))) (let ((_let_23 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_9))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_23 (_let_4 ((app_2E2 (_let_12 F0_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_23 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F1_2E0)) _let_5))) _let_13)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_23 (_let_4 ((app_2E2 (_let_12 F2_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_23 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F3_2E0)) _let_5))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_22 (_let_4 ((app_2E2 (_let_12 F5_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_22 (_let_4 ((app_2E2 (_let_12 F4_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_22 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F6_2E0)) _let_5))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_21 (_let_4 ((app_2E2 (_let_12 F8_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_21 (_let_4 ((app_2E2 (_let_12 F7_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_21 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F9_2E0)) _let_5))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_20 ((app_2E2 (_let_19 F10_2E0)) _let_17))) (_let_4 ((app_2E2 (_let_12 F24_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_20 ((app_2E2 (_let_19 F11_2E0)) _let_17))) (_let_4 ((app_2E2 (_let_12 F25_2E0)) _let_13)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_20 ((app_2E2 (_let_19 F12_2E0)) _let_17))) (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F26_2E0)) _let_5))) _let_13)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_10 (_let_4 ((app_2E2 (_let_12 F15_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_10 (_let_4 ((app_2E2 (_let_12 ((app_2E2 ((s (_let_6 _let_11)) F16_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_13)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_16 (_let_4 ((app_2E2 (_let_12 F20_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_16 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F21_2E0)) _let_5))) _let_13)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_16 (_let_4 ((app_2E2 (_let_12 F22_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_16 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F23_2E0)) _let_5))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_15 (_let_4 ((app_2E2 (_let_12 F17_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_15 (_let_4 ((app_2E2 (_let_12 F18_2E0)) _let_13)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_15 (_let_4 ((app_2E2 (_let_12 ((app_2E2 (_let_14 F19_2E0)) _let_5))) _let_13)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_10 (_let_4 ((app_2E2 (_let_12 F13_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_10 (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F14_2E0)) _let_5))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0q))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0A Bool) (V1B Bool)) (= (and V0A V1B) (not (or (not V0A) (not V1B))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 _let_2)) (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= ((F0 V2P1) V3P2) (=> V2P1 V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1i_2E0))) (let ((_let_4 (_let_2 V0v_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1P_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_4 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_2)))) (let ((_let_7 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_3))) (let ((_let_8 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_3))) (let ((_let_9 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_3))) (let ((_let_10 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_3))) (let ((_let_11 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_3))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_7 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_8 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_9 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_10 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_11 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_11 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_10 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_9 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_8 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_7 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V1P_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F1_2E0)) ((s A_27a) V4v_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0i_2E0))) (let ((_let_5 (_let_2 V1P_2E0))) (=> (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (= (_let_3 (c_2Emin_2E_40_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) _let_5)))) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_5) _let_4))) _let_4) (_let_3 (c_2Emin_2E_40_2E1 (_let_2 F1_2E0)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1))) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0i_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2Q_2E0)))))))))) (forall ((A_27a d) (V0v_2E0 u) (V1i_2E0 u) (V2P Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1i_2E0))) (let ((_let_4 (_let_2 V0v_2E0))) (= (=> V2P (= _let_4 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1e_2E0 u) (V2b1_2E0 u) (V3b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b1_2E0))) (let ((_let_3 ((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V1e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V3b2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ebag_2EBAG__MERGE_2E2 _let_2) _let_5))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((V0x Bool) (V1t1 Bool) (V2t2 Bool)) (=> (=> V1t1 V2t2) (=> (or V0x V1t1) (or V0x V2t2)))) (forall ((V0a mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Estring_2EORD V0a)) V0a)) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F9_2E0 u) (F8_2E0 u) (F11_2E0 u) (F10_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F0_2E0 u) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F1_2E0 u)) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V11y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V10x_2E0)))) ((s A_27a) V11y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F9_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V10x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F8_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V5x_2E0)))) (forall ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V20x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V21y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V20x_2E0)))) ((s A_27a) V21y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F11_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V20x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V15x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V16y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V15x_2E0)))) ((s A_27a) V16y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F10_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V15x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V17y_2E0 u) (V18x_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 ((s A_27c) V18x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F6_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V12y_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 ((s A_27c) V13x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F4_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V7y_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V8x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V2y_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((s A_27c) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0iy_2E0 u) (V19fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V19fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F7_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V14fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V14fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F5_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V9fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V9fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F3_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V4fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V4fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F1_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (forall ((V0iy_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_3) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_9 ((s _let_8) V0iy_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_11 (s ((tyop_2Emin_2Efun _let_8) _let_10)))) (let ((_let_12 (s _let_10))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (and (=> (forall ((V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 (_let_12 ((app_2E2 (_let_11 F1_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F8_2E0)) _let_4)))))) (=> (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F2_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_12 ((app_2E2 (_let_11 F3_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F9_2E0)) _let_4)))))) (=> (forall ((V12y_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F4_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 (_let_12 ((app_2E2 (_let_11 F5_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F10_2E0)) _let_4)))))) (=> (forall ((V17y_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F6_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 (_let_12 ((app_2E2 (_let_11 F7_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F11_2E0)) _let_4)))))))))))))))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))))) (let ((_let_5 (mono_2Ec_2Earithmetic_2E_3E_3D _let_4))) (let ((_let_6 ((mono_2Ec_2Earithmetic_2E_2B V0x) _let_1))) (let ((_let_7 ((mono_2Ec_2Earithmetic_2E_2B _let_1) V0x))) (let ((_let_8 (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)))) (and (= (exists ((V12l_27_2E0 u) (V13e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V12l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V13e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_7) _let_4)) (= (_let_5 _let_7) (exists ((V14l_27_2E0 u) (V15e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V14l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V15e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V22l_27_2E0 u) (V23e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V22l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V23e1_2E0)) _let_2))))))) (= _let_7 _let_4)) (= (= _let_4 _let_6) (exists ((V24l_27_2E0 u) (V25e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V24l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V25e1_2E0)) _let_2)))))))) (= _let_8 (= mono_2Ec_2Enum_2E0 _let_4)) (= _let_8 ((mono_2Ec_2Eprim__rec_2E_3C _let_4) _let_1)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_4) mono_2Ec_2Enum_2E0) _let_8) (= ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_4) _let_8) (= _let_8 ((mono_2Ec_2Earithmetic_2E_3E _let_1) _let_4)) (= _let_8 (= _let_4 mono_2Ec_2Enum_2E0)) (= (= _let_6 _let_4) (exists ((V26l_27_2E0 u) (V27e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V26l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V27e1_2E0)) _let_2)))))))) (= (= _let_4 _let_7) (exists ((V20l_27_2E0 u) (V21e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V20l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V21e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (_let_5 _let_6) (exists ((V18l_27_2E0 u) (V19e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V18l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V19e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V16l_27_2E0 u) (V17e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V16l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V17e1_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_4)) (= (_let_5 _let_1) (exists ((V10l_27_2E0 u) (V11e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V11e1_2E0)) (_let_1 V10l_27_2E0))))))) (= (exists ((V8l_27_2E0 u) (V9e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V9e1_2E0)) (_let_1 V8l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) _let_4)) (= ((mono_2Ec_2Earithmetic_2E_3E _let_4) mono_2Ec_2Enum_2E0) (exists ((V6l_27_2E0 u) (V7e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V7e1_2E0)) (_let_1 V6l_27_2E0))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_4) (exists ((V4l_27_2E0 u) (V5e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V5e1_2E0)) (_let_1 V4l_27_2E0))))))) (= (= _let_1 _let_4) (exists ((V3e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (exists ((V2e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_4 _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 ((s ((tyop_2Esum_2Esum A_27b) A_27a)) V0x_2E0)))))) (and (= _let_1 (forall ((V2r_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27b) A_27a)))) (not (= (_let_1 (c_2Esum_2EINR_2E1 ((s A_27a) V2r_2E0))) (_let_1 V0x_2E0)))))) (= (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27b) A_27a)))) (not (= (_let_1 V0x_2E0) (_let_1 (c_2Esum_2EINR_2E1 ((s A_27a) V1r_2E0))))))) _let_1)))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F1_2E0)) _let_2))) ((s A_27c) V3x_2E0))) _let_2))))) (=> (forall ((V0i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s A_27b) V2x_2E0))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s A_27a) V0i_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F0_2E0)) _let_4))) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F1_2E0)) _let_4))) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) mono_2Ec_2Ebool_2ET))))))))))))) (forall ((A_27a d) (V0v_2E0 u) (V1i_2E0 u) (V2P Bool)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1i_2E0))) (let ((_let_3 (_let_1 V0v_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_3) _let_2) (_let_4 (i_mono_2Etyop_2Emin_2Ebool V2P))))) (=> (not V2P) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1p1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1p1_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (_let_3 V0p_2E0))) (= (= _let_4 (_let_3 ((c_2Epair_2E_2C_2E2 _let_2) ((s A_27b) (c_2Epair_2ESND_2E1 _let_4))))) (= (_let_1 (c_2Epair_2EFST_2E1 _let_4)) _let_2))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2EFINITE__BAG_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0i_2E0 u) (V1P_2E0 u)) (=> (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V0i_2E0)))) (exists ((V3v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3v_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (V0opt_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0opt_2E0))) (= (= _let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F13_2E0 u) (F11_2E0 u) (F1_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F12_2E0 u) (F10_2E0 u) (F0_2E0 u) (F9_2E0 u) (F8_2E0 u)) (=> (forall ((V2P_2E0 u) (V17x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F7_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V17x_2E0)))) (forall ((V18y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V17x_2E0)))) ((s A_27a) V18y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V13x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F5_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V13x_2E0)))) (forall ((V14y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V13x_2E0)))) ((s A_27a) V14y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V9x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V10y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V9x_2E0)))) ((s A_27a) V10y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F3_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V9x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V23x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V24y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V23x_2E0)))) ((s A_27a) V24y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F13_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V23x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V27x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V28y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V27x_2E0)))) ((s A_27a) V28y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F11_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V27x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V5x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V15y_2E0 u) (V16x_2E0 u)) (let ((_let_1 ((s A_27a) V15y_2E0))) (let ((_let_2 ((s A_27c) V16x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F6_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V11y_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27a) V11y_2E0))) (let ((_let_2 ((s A_27c) V12x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F4_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V7y_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V8x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V19y_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27a) V19y_2E0))) (let ((_let_2 ((s A_27c) V21x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F12_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V25y_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27a) V25y_2E0))) (let ((_let_2 ((s A_27c) V26x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F10_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V3y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V3y_2E0))) (let ((_let_2 ((s A_27c) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0iK_2E0 u) (V22xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V0iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) F9_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V22xxx)))) _let_2))))) (=> (forall ((V0iK_2E0 u) (V20xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V0iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) F8_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V20xxx)))) _let_2))))) (forall ((V0iK_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V2P_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_2) _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (and (=> (forall ((V7y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F2_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V7y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F3_2E0)) _let_3)))))) (=> (forall ((V15y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F6_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V15y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F7_2E0)) _let_3)))))) (=> (forall ((V25y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F10_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V25y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F11_2E0)) _let_3)))))) (=> (forall ((V19y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F8_2E0)) ((s A_27c) V0iK_2E0)))) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F12_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V19y_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F9_2E0)) ((s A_27c) V0iK_2E0)))) (_let_6 ((app_2E2 (_let_5 F13_2E0)) _let_3)))))) (=> (forall ((V11y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F4_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V11y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F5_2E0)) _let_3)))))) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V3y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F1_2E0)) _let_3)))))))))))))))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= mono_2Ec_2Enum_2E0 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0)))) (forall ((V4v2_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V4v2_2E0)))))))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (s A_27a))) (=> (forall ((V3v2_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V3v2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_3 V0v_2E0)) (_let_3 V1i_2E0)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_3) ((s A_27a) V0i_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27c) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Efcp_2Ecart ((tyop_2Epair_2Eprod A_27a) A_27c)) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Efcp_2EFCP__ZIP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Efcp_2EFCP__ZIP_2E0)) _let_4))) _let_2))))))))))) (= (_let_70 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool)) (_let_70 c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Elist_2EFOLDL_2E3 ((s (_let_2 (_let_2 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EISL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EISL_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit1 A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s A_27b) V2x_2E0))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s A_27a) V0i_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) F0_2E0)) _let_1))) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_3) _let_1))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2X_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (_let_3 V2X_2E0))) (let ((_let_5 (_let_1 (c_2Epair_2EFST_2E1 _let_4)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 V0y_2E0))) (let ((_let_8 (_let_6 (c_2Epair_2ESND_2E1 _let_4)))) (let ((_let_9 (_let_3 ((c_2Epair_2E_2C_2E2 _let_2) _let_7)))) (and (= (and (= _let_7 _let_8) (= _let_2 _let_5)) (= _let_9 _let_4)) (= (= _let_4 _let_9) (and (= _let_8 _let_7) (= _let_5 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) _let_1))) (= (forall ((V2fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V2fv_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EquantHeuristics_2EIS__REMOVABLE__QUANT__FUN_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (forall ((V1v_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V2x_2E0))) (_let_1 V1v_2E0))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (_let_3 _let_1)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecombin_2EMONOID_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2EMONOID_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Erich__list_2ETL__T_2E0)) _let_4) _let_3)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (forall ((V4v2_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V4v2_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0))))))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (s A_27a))) (=> (forall ((V3v2_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V3v2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_3 V0v_2E0)) (_let_3 V1i_2E0)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2E_3E_3D _let_3))) (let ((_let_6 ((mono_2Ec_2Earithmetic_2E_2B _let_4) V0x))) (let ((_let_7 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_8 (_let_7 _let_4))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_10 (_let_7 _let_9))) (let ((_let_11 ((mono_2Ec_2Earithmetic_2E_2B _let_9) V0x))) (let ((_let_12 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_13 (mono_2Ec_2Earithmetic_2E_3E _let_3))) (and (= (exists ((V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_3 _let_4)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_9) _let_3) (exists ((V6l_27_2E0 u) (V7e1_2E0 u) (V8e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e2_2E0)) (_let_1 V6l_27_2E0)))))))))) (= (exists ((V9l_27_2E0 u) (V10e1_2E0 u) (V11e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e2_2E0)) (_let_1 V9l_27_2E0))))))))) (_let_13 _let_9)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_4) _let_3) (exists ((V12l_27_2E0 u) (V13e1_2E0 u) (V14e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e2_2E0)) (_let_1 V12l_27_2E0)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_3) (exists ((V18l_27_2E0 u) (V19e1_2E0 u) (V20e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V18l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V19e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V20e2_2E0)) _let_2))))))))))) (= (exists ((V24l_27_2E0 u) (V25e1_2E0 u) (V26e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V24l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V25e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V26e2_2E0)) _let_2)))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_3)) (= (_let_5 _let_8) (exists ((V27l_27_2E0 u) (V28e1_2E0 u) (V29e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V27l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V28e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V29e2_2E0)) _let_2))))))))))) (= (= _let_3 _let_6) (exists ((V30l_27_2E0 u) (V31e1_2E0 u) (V32e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V30l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V31e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V32e2_2E0)) _let_2))))))))))) (= (exists ((V39l_27_2E0 u) (V40e1_2E0 u) (V41e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V39l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V40e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V41e2_2E0)) _let_2)))))))))) (= _let_8 _let_3)) (= (exists ((V42e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V42e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_3 _let_9)) (= (exists ((V44l_27_2E0 u) (V45e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V45e1_2E0)) (_let_1 V44l_27_2E0)))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_3)) (= (_let_13 mono_2Ec_2Enum_2E0) (exists ((V46l_27_2E0 u) (V47e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V47e1_2E0)) (_let_1 V46l_27_2E0))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_9) _let_3) (exists ((V48l_27_2E0 u) (V49e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V49e1_2E0)) (_let_1 V48l_27_2E0))))))) (= (_let_5 _let_9) (exists ((V50l_27_2E0 u) (V51e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V51e1_2E0)) (_let_1 V50l_27_2E0))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_11) _let_3) (exists ((V52l_27_2E0 u) (V53e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V52l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V53e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (_let_5 _let_11) (exists ((V54l_27_2E0 u) (V55e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V54l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V55e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (= _let_11 _let_3) (exists ((V62l_27_2E0 u) (V63e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V62l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V63e1_2E0)) _let_2)))))))) (= (= _let_3 _let_10) (exists ((V64l_27_2E0 u) (V65e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V64l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V65e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_12 (= _let_3 mono_2Ec_2Enum_2E0)) (= _let_12 (= mono_2Ec_2Enum_2E0 _let_3)) (= _let_12 ((mono_2Ec_2Earithmetic_2E_3E _let_9) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0) _let_12) (= ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3) _let_12) (= _let_12 ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_9)) (= (exists ((V66l_27_2E0 u) (V67e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V66l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V67e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_10 _let_3)) (= (= _let_3 _let_11) (exists ((V60l_27_2E0 u) (V61e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V60l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V61e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V58l_27_2E0 u) (V59e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V58l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V59e1_2E0)) _let_2))))))) (_let_5 _let_10)) (= (exists ((V56l_27_2E0 u) (V57e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V56l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V57e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_10) _let_3)) (= (= _let_9 _let_3) (exists ((V43e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V43e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (= _let_3 _let_8) (exists ((V36l_27_2E0 u) (V37e1_2E0 u) (V38e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V36l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V37e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V38e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_6 _let_3) (exists ((V33l_27_2E0 u) (V34e1_2E0 u) (V35e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V33l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V34e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V35e2_2E0)) _let_2))))))))))) (= (exists ((V21l_27_2E0 u) (V22e1_2E0 u) (V23e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V21l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V22e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V23e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_5 _let_6)) (= (exists ((V15l_27_2E0 u) (V16e1_2E0 u) (V17e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e2_2E0)) (_let_1 V15l_27_2E0))))))))) (_let_5 _let_4)) (= (exists ((V4e1_2E0 u) (V5e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_4 _let_3))))))))))))))))) (= (_let_70 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool)) (_let_70 c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27b d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_5 (c_2Esorting_2ESORTED_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etransitive_2E1 _let_4))) (= (and (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1L_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) (_let_1 V2x_2E0)))) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0ll_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V0ll_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F1_2E0)) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (_let_5 ((c_2Ellist_2Ellist__rep_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))) (=> (forall ((V0ll_2E0 u) (V1v_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0ll_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_5 _let_8)) F0_2E0)) _let_3))) ((s A_27a) V1v_2E0))) (_let_7 (c_2Eoption_2ESOME_2E1 (_let_2 (c_2Ellist_2Ellist__abs_2E1 ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F1_2E0)) _let_3)))))))))))))))) (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 (c_2Ellist_2ELTL_2E1 _let_2)) (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Ellist_2ELHD_2E1 _let_2))) (_let_5 c_2Eoption_2ENONE_2E0)) ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0i_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2Q_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1p2_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1p2_2E0))) (= (= (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))) _let_4)) _let_2) (= _let_4 (_let_3 (c_2Epair_2ESND_2E1 _let_2))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_3)))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_5 V1l_2E0))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_6))))) (let ((_let_8 ((mono_2Ec_2Earithmetic_2E_2B _let_4) V0x))) (let ((_let_9 (mono_2Ec_2Earithmetic_2E_3E_3D _let_7))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EBIT2 _let_10))) (let ((_let_12 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_11)))) (let ((_let_13 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((mono_2Ec_2Earithmetic_2E_2B _let_12) V0x))) (let ((_let_16 (mono_2Ec_2Earithmetic_2EBIT1 _let_10))) (let ((_let_17 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_16)))) (let ((_let_18 (mono_2Ec_2Earithmetic_2E_3E _let_7))) (let ((_let_19 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_11)))) (let ((_let_20 ((mono_2Ec_2Earithmetic_2E_2B _let_19) V0x))) (let ((_let_21 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_16)))) (let ((_let_22 ((mono_2Ec_2Earithmetic_2E_2B _let_17) V0x))) (let ((_let_23 (_let_13 _let_17))) (let ((_let_24 (mono_2Ec_2Earithmetic_2EBIT2 _let_1))) (let ((_let_25 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_24)))) (let ((_let_26 (_let_13 _let_21))) (let ((_let_27 ((mono_2Ec_2Earithmetic_2E_2B _let_21) V0x))) (let ((_let_28 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_24)))) (let ((_let_29 ((mono_2Ec_2Earithmetic_2E_2B _let_25) V0x))) (let ((_let_30 (_let_13 _let_25))) (let ((_let_31 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_2)))) (let ((_let_32 ((mono_2Ec_2Earithmetic_2E_2B _let_28) V0x))) (let ((_let_33 (_let_13 _let_28))) (let ((_let_34 (mono_2Ec_2Earithmetic_2ENUMERAL _let_3))) (let ((_let_35 ((mono_2Ec_2Earithmetic_2E_2B _let_31) V0x))) (let ((_let_36 (_let_13 _let_31))) (let ((_let_37 (mono_2Ec_2Earithmetic_2ENUMERAL _let_11))) (let ((_let_38 (_let_13 _let_34))) (let ((_let_39 ((mono_2Ec_2Earithmetic_2E_2B _let_34) V0x))) (let ((_let_40 (mono_2Ec_2Earithmetic_2ENUMERAL _let_16))) (let ((_let_41 ((mono_2Ec_2Earithmetic_2E_2B _let_37) V0x))) (let ((_let_42 (_let_13 _let_37))) (let ((_let_43 (mono_2Ec_2Earithmetic_2ENUMERAL _let_24))) (let ((_let_44 ((mono_2Ec_2Earithmetic_2E_2B _let_40) V0x))) (let ((_let_45 (_let_13 _let_40))) (let ((_let_46 (mono_2Ec_2Earithmetic_2ENUMERAL _let_2))) (let ((_let_47 ((mono_2Ec_2Earithmetic_2E_2B _let_43) V0x))) (let ((_let_48 (_let_13 _let_43))) (let ((_let_49 (mono_2Ec_2Earithmetic_2ENUMERAL _let_10))) (let ((_let_50 (_let_13 _let_46))) (let ((_let_51 ((mono_2Ec_2Earithmetic_2E_2B _let_46) V0x))) (let ((_let_52 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (let ((_let_53 ((mono_2Ec_2Earithmetic_2E_2B _let_49) V0x))) (let ((_let_54 (_let_13 _let_49))) (let ((_let_55 ((mono_2Ec_2Earithmetic_2E_2B _let_52) V0x))) (let ((_let_56 (_let_13 _let_52))) (let ((_let_57 (= _let_6 (_let_5 c_2Elist_2ENIL_2E0)))) (let ((_let_58 (_let_13 _let_19))) (let ((_let_59 (_let_13 _let_4))) (and (= (exists ((V32l_27_2E0 u) (V33e1_2E0 u) (V34e2_2E0 u) (V35e3_2E0 u) (V36e4_2E0 u) (V37e5_2E0 u) (V38e6_2E0 u) (V39e7_2E0 u) (V40e8_2E0 u) (V41e9_2E0 u) (V42e10_2E0 u) (V43e11_2E0 u) (V44e12_2E0 u) (V45e13_2E0 u) (V46e14_2E0 u) (V47e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V33e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V36e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V37e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V38e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V39e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V40e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V41e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V42e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V43e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V44e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V45e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V46e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V47e15_2E0)) (_let_1 V32l_27_2E0))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_12) _let_7)) (= (_let_18 _let_12) (exists ((V48l_27_2E0 u) (V49e1_2E0 u) (V50e2_2E0 u) (V51e3_2E0 u) (V52e4_2E0 u) (V53e5_2E0 u) (V54e6_2E0 u) (V55e7_2E0 u) (V56e8_2E0 u) (V57e9_2E0 u) (V58e10_2E0 u) (V59e11_2E0 u) (V60e12_2E0 u) (V61e13_2E0 u) (V62e14_2E0 u) (V63e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V49e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V50e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V51e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V52e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V53e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V54e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V55e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V56e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V57e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V58e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V59e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V60e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V61e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V62e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V63e15_2E0)) (_let_1 V48l_27_2E0)))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_4) _let_7) (exists ((V64l_27_2E0 u) (V65e1_2E0 u) (V66e2_2E0 u) (V67e3_2E0 u) (V68e4_2E0 u) (V69e5_2E0 u) (V70e6_2E0 u) (V71e7_2E0 u) (V72e8_2E0 u) (V73e9_2E0 u) (V74e10_2E0 u) (V75e11_2E0 u) (V76e12_2E0 u) (V77e13_2E0 u) (V78e14_2E0 u) (V79e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V65e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V66e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V67e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V68e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V69e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V70e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V71e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V72e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V73e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V74e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V75e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V76e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V77e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V78e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V79e15_2E0)) (_let_1 V64l_27_2E0)))))))))))))))))))))))))))))))))))) (= (exists ((V80l_27_2E0 u) (V81e1_2E0 u) (V82e2_2E0 u) (V83e3_2E0 u) (V84e4_2E0 u) (V85e5_2E0 u) (V86e6_2E0 u) (V87e7_2E0 u) (V88e8_2E0 u) (V89e9_2E0 u) (V90e10_2E0 u) (V91e11_2E0 u) (V92e12_2E0 u) (V93e13_2E0 u) (V94e14_2E0 u) (V95e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V81e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V82e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V83e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V84e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V85e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V86e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V87e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V88e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V89e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V90e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V91e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V92e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V93e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V94e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V95e15_2E0)) (_let_1 V80l_27_2E0))))))))))))))))))))))))))))))))))) (_let_9 _let_4)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_7) (exists ((V96l_27_2E0 u) (V97e1_2E0 u) (V98e2_2E0 u) (V99e3_2E0 u) (V100e4_2E0 u) (V101e5_2E0 u) (V102e6_2E0 u) (V103e7_2E0 u) (V104e8_2E0 u) (V105e9_2E0 u) (V106e10_2E0 u) (V107e11_2E0 u) (V108e12_2E0 u) (V109e13_2E0 u) (V110e14_2E0 u) (V111e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V96l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V97e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V98e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V99e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V100e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V101e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V102e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V103e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V104e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V105e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V106e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V107e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V108e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V109e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V110e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V111e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V128l_27_2E0 u) (V129e1_2E0 u) (V130e2_2E0 u) (V131e3_2E0 u) (V132e4_2E0 u) (V133e5_2E0 u) (V134e6_2E0 u) (V135e7_2E0 u) (V136e8_2E0 u) (V137e9_2E0 u) (V138e10_2E0 u) (V139e11_2E0 u) (V140e12_2E0 u) (V141e13_2E0 u) (V142e14_2E0 u) (V143e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V128l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V129e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V130e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V131e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V132e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V133e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V134e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V135e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V136e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V137e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V138e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V139e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V140e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V141e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V142e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V143e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_59) _let_7)) (= (_let_9 _let_59) (exists ((V144l_27_2E0 u) (V145e1_2E0 u) (V146e2_2E0 u) (V147e3_2E0 u) (V148e4_2E0 u) (V149e5_2E0 u) (V150e6_2E0 u) (V151e7_2E0 u) (V152e8_2E0 u) (V153e9_2E0 u) (V154e10_2E0 u) (V155e11_2E0 u) (V156e12_2E0 u) (V157e13_2E0 u) (V158e14_2E0 u) (V159e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V144l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V145e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V146e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V147e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V148e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V149e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V150e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V151e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V152e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V153e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V154e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V155e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V156e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V157e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V158e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V159e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V160l_27_2E0 u) (V161e1_2E0 u) (V162e2_2E0 u) (V163e3_2E0 u) (V164e4_2E0 u) (V165e5_2E0 u) (V166e6_2E0 u) (V167e7_2E0 u) (V168e8_2E0 u) (V169e9_2E0 u) (V170e10_2E0 u) (V171e11_2E0 u) (V172e12_2E0 u) (V173e13_2E0 u) (V174e14_2E0 u) (V175e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V160l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V161e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V162e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V163e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V164e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V165e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V166e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V167e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V168e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V169e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V170e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V171e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V172e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V173e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V174e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V175e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) (= _let_7 _let_8)) (= (= _let_7 _let_59) (exists ((V192l_27_2E0 u) (V193e1_2E0 u) (V194e2_2E0 u) (V195e3_2E0 u) (V196e4_2E0 u) (V197e5_2E0 u) (V198e6_2E0 u) (V199e7_2E0 u) (V200e8_2E0 u) (V201e9_2E0 u) (V202e10_2E0 u) (V203e11_2E0 u) (V204e12_2E0 u) (V205e13_2E0 u) (V206e14_2E0 u) (V207e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V192l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V193e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V194e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V195e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V196e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V197e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V198e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V199e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V200e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V201e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V202e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V203e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V204e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V205e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V206e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V207e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V208l_27_2E0 u) (V209e1_2E0 u) (V210e2_2E0 u) (V211e3_2E0 u) (V212e4_2E0 u) (V213e5_2E0 u) (V214e6_2E0 u) (V215e7_2E0 u) (V216e8_2E0 u) (V217e9_2E0 u) (V218e10_2E0 u) (V219e11_2E0 u) (V220e12_2E0 u) (V221e13_2E0 u) (V222e14_2E0 u) (V223e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V208l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V209e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V210e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V211e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V212e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V213e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V214e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V215e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V216e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V217e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V218e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V219e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V220e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V221e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V222e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V223e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) (= _let_59 _let_7)) (= (exists ((V252l_27_2E0 u) (V253e1_2E0 u) (V254e2_2E0 u) (V255e3_2E0 u) (V256e4_2E0 u) (V257e5_2E0 u) (V258e6_2E0 u) (V259e7_2E0 u) (V260e8_2E0 u) (V261e9_2E0 u) (V262e10_2E0 u) (V263e11_2E0 u) (V264e12_2E0 u) (V265e13_2E0 u) (V266e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V253e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V254e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V255e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V256e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V257e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V258e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V259e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V260e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V261e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V262e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V263e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V264e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V265e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V266e14_2E0)) (_let_1 V252l_27_2E0))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_19) _let_7)) (= (_let_18 _let_19) (exists ((V267l_27_2E0 u) (V268e1_2E0 u) (V269e2_2E0 u) (V270e3_2E0 u) (V271e4_2E0 u) (V272e5_2E0 u) (V273e6_2E0 u) (V274e7_2E0 u) (V275e8_2E0 u) (V276e9_2E0 u) (V277e10_2E0 u) (V278e11_2E0 u) (V279e12_2E0 u) (V280e13_2E0 u) (V281e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V268e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V269e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V270e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V271e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V272e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V273e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V274e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V275e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V276e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V277e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V278e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V279e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V280e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V281e14_2E0)) (_let_1 V267l_27_2E0)))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_7) (exists ((V312l_27_2E0 u) (V313e1_2E0 u) (V314e2_2E0 u) (V315e3_2E0 u) (V316e4_2E0 u) (V317e5_2E0 u) (V318e6_2E0 u) (V319e7_2E0 u) (V320e8_2E0 u) (V321e9_2E0 u) (V322e10_2E0 u) (V323e11_2E0 u) (V324e12_2E0 u) (V325e13_2E0 u) (V326e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V312l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V313e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V314e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V315e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V316e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V317e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V318e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V319e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V320e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V321e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V322e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V323e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V324e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V325e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V326e14_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (exists ((V327l_27_2E0 u) (V328e1_2E0 u) (V329e2_2E0 u) (V330e3_2E0 u) (V331e4_2E0 u) (V332e5_2E0 u) (V333e6_2E0 u) (V334e7_2E0 u) (V335e8_2E0 u) (V336e9_2E0 u) (V337e10_2E0 u) (V338e11_2E0 u) (V339e12_2E0 u) (V340e13_2E0 u) (V341e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V327l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V328e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V329e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V330e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V331e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V332e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V333e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V334e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V335e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V336e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V337e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V338e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V339e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V340e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V341e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_15)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_14) _let_7) (exists ((V342l_27_2E0 u) (V343e1_2E0 u) (V344e2_2E0 u) (V345e3_2E0 u) (V346e4_2E0 u) (V347e5_2E0 u) (V348e6_2E0 u) (V349e7_2E0 u) (V350e8_2E0 u) (V351e9_2E0 u) (V352e10_2E0 u) (V353e11_2E0 u) (V354e12_2E0 u) (V355e13_2E0 u) (V356e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V342l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V343e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V344e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V345e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V346e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V347e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V348e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V349e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V350e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V351e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V352e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V353e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V354e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V355e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V356e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V387l_27_2E0 u) (V388e1_2E0 u) (V389e2_2E0 u) (V390e3_2E0 u) (V391e4_2E0 u) (V392e5_2E0 u) (V393e6_2E0 u) (V394e7_2E0 u) (V395e8_2E0 u) (V396e9_2E0 u) (V397e10_2E0 u) (V398e11_2E0 u) (V399e12_2E0 u) (V400e13_2E0 u) (V401e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V387l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V388e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V389e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V390e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V391e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V392e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V393e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V394e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V395e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V396e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V397e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V398e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V399e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V400e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V401e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) (= _let_15 _let_7)) (= (exists ((V417l_27_2E0 u) (V418e1_2E0 u) (V419e2_2E0 u) (V420e3_2E0 u) (V421e4_2E0 u) (V422e5_2E0 u) (V423e6_2E0 u) (V424e7_2E0 u) (V425e8_2E0 u) (V426e9_2E0 u) (V427e10_2E0 u) (V428e11_2E0 u) (V429e12_2E0 u) (V430e13_2E0 u) (V431e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V417l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V418e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V419e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V420e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V421e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V422e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V423e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V424e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V425e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V426e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V427e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V428e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V429e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V430e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V431e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) (= _let_14 _let_7)) (= (exists ((V432e1_2E0 u) (V433e2_2E0 u) (V434e3_2E0 u) (V435e4_2E0 u) (V436e5_2E0 u) (V437e6_2E0 u) (V438e7_2E0 u) (V439e8_2E0 u) (V440e9_2E0 u) (V441e10_2E0 u) (V442e11_2E0 u) (V443e12_2E0 u) (V444e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V432e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V433e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V434e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V435e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V436e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V437e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V438e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V439e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V440e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V441e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V442e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V443e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V444e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))) (= _let_7 _let_19)) (= (= _let_19 _let_7) (exists ((V445e1_2E0 u) (V446e2_2E0 u) (V447e3_2E0 u) (V448e4_2E0 u) (V449e5_2E0 u) (V450e6_2E0 u) (V451e7_2E0 u) (V452e8_2E0 u) (V453e9_2E0 u) (V454e10_2E0 u) (V455e11_2E0 u) (V456e12_2E0 u) (V457e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V445e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V446e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V447e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V448e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V449e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V450e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V451e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V452e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V453e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V454e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V455e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V456e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V457e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_17) _let_7) (exists ((V458l_27_2E0 u) (V459e1_2E0 u) (V460e2_2E0 u) (V461e3_2E0 u) (V462e4_2E0 u) (V463e5_2E0 u) (V464e6_2E0 u) (V465e7_2E0 u) (V466e8_2E0 u) (V467e9_2E0 u) (V468e10_2E0 u) (V469e11_2E0 u) (V470e12_2E0 u) (V471e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V459e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V460e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V461e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V462e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V463e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V464e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V465e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V466e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V467e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V468e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V469e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V470e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V471e13_2E0)) (_let_1 V458l_27_2E0)))))))))))))))))))))))))))))))) (= (exists ((V528l_27_2E0 u) (V529e1_2E0 u) (V530e2_2E0 u) (V531e3_2E0 u) (V532e4_2E0 u) (V533e5_2E0 u) (V534e6_2E0 u) (V535e7_2E0 u) (V536e8_2E0 u) (V537e9_2E0 u) (V538e10_2E0 u) (V539e11_2E0 u) (V540e12_2E0 u) (V541e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V528l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V529e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V530e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V531e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V532e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V533e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V534e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V535e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V536e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V537e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V538e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V539e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V540e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V541e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (_let_9 _let_20)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_58) _let_7) (exists ((V542l_27_2E0 u) (V543e1_2E0 u) (V544e2_2E0 u) (V545e3_2E0 u) (V546e4_2E0 u) (V547e5_2E0 u) (V548e6_2E0 u) (V549e7_2E0 u) (V550e8_2E0 u) (V551e9_2E0 u) (V552e10_2E0 u) (V553e11_2E0 u) (V554e12_2E0 u) (V555e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V542l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V543e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V544e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V545e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V546e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V547e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V548e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V549e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V550e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V551e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V552e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V553e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V554e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V555e13_2E0)) _let_2))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_9 _let_58) (exists ((V556l_27_2E0 u) (V557e1_2E0 u) (V558e2_2E0 u) (V559e3_2E0 u) (V560e4_2E0 u) (V561e5_2E0 u) (V562e6_2E0 u) (V563e7_2E0 u) (V564e8_2E0 u) (V565e9_2E0 u) (V566e10_2E0 u) (V567e11_2E0 u) (V568e12_2E0 u) (V569e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V556l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V557e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V558e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V559e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V560e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V561e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V562e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V563e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V564e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V565e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V566e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V567e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V568e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V569e13_2E0)) _let_2))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V598l_27_2E0 u) (V599e1_2E0 u) (V600e2_2E0 u) (V601e3_2E0 u) (V602e4_2E0 u) (V603e5_2E0 u) (V604e6_2E0 u) (V605e7_2E0 u) (V606e8_2E0 u) (V607e9_2E0 u) (V608e10_2E0 u) (V609e11_2E0 u) (V610e12_2E0 u) (V611e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V598l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V599e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V600e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V601e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V602e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V603e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V604e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V605e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V606e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V607e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V608e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V609e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V610e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V611e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_7 _let_58)) (= (exists ((V612l_27_2E0 u) (V613e1_2E0 u) (V614e2_2E0 u) (V615e3_2E0 u) (V616e4_2E0 u) (V617e5_2E0 u) (V618e6_2E0 u) (V619e7_2E0 u) (V620e8_2E0 u) (V621e9_2E0 u) (V622e10_2E0 u) (V623e11_2E0 u) (V624e12_2E0 u) (V625e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V612l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V613e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V614e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V615e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V616e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V617e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V618e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V619e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V620e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V621e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V622e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V623e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V624e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V625e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_58 _let_7)) (= (exists ((V626e1_2E0 u) (V627e2_2E0 u) (V628e3_2E0 u) (V629e4_2E0 u) (V630e5_2E0 u) (V631e6_2E0 u) (V632e7_2E0 u) (V633e8_2E0 u) (V634e9_2E0 u) (V635e10_2E0 u) (V636e11_2E0 u) (V637e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V626e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V627e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V628e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V629e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V630e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V631e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V632e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V633e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V634e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V635e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V636e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V637e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))) (= _let_7 _let_17)) (= (exists ((V663l_27_2E0 u) (V664e1_2E0 u) (V665e2_2E0 u) (V666e3_2E0 u) (V667e4_2E0 u) (V668e5_2E0 u) (V669e6_2E0 u) (V670e7_2E0 u) (V671e8_2E0 u) (V672e9_2E0 u) (V673e10_2E0 u) (V674e11_2E0 u) (V675e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V664e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V665e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V666e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V667e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V668e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V669e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V670e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V671e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V672e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V673e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V674e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V675e12_2E0)) (_let_1 V663l_27_2E0))))))))))))))))))))))))))))) (_let_18 _let_21)) (= (exists ((V676l_27_2E0 u) (V677e1_2E0 u) (V678e2_2E0 u) (V679e3_2E0 u) (V680e4_2E0 u) (V681e5_2E0 u) (V682e6_2E0 u) (V683e7_2E0 u) (V684e8_2E0 u) (V685e9_2E0 u) (V686e10_2E0 u) (V687e11_2E0 u) (V688e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V677e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V678e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V679e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V680e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V681e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V682e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V683e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V684e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V685e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V686e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V687e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V688e12_2E0)) (_let_1 V676l_27_2E0))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_7)) (= (exists ((V702l_27_2E0 u) (V703e1_2E0 u) (V704e2_2E0 u) (V705e3_2E0 u) (V706e4_2E0 u) (V707e5_2E0 u) (V708e6_2E0 u) (V709e7_2E0 u) (V710e8_2E0 u) (V711e9_2E0 u) (V712e10_2E0 u) (V713e11_2E0 u) (V714e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V702l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V703e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V704e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V705e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V706e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V707e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V708e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V709e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V710e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V711e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V712e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V713e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V714e12_2E0)) _let_2)))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_7)) (= (exists ((V728l_27_2E0 u) (V729e1_2E0 u) (V730e2_2E0 u) (V731e3_2E0 u) (V732e4_2E0 u) (V733e5_2E0 u) (V734e6_2E0 u) (V735e7_2E0 u) (V736e8_2E0 u) (V737e9_2E0 u) (V738e10_2E0 u) (V739e11_2E0 u) (V740e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V728l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V729e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V730e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V731e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V732e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V733e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V734e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V735e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V736e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V737e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V738e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V739e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V740e12_2E0)) _let_2))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_23) _let_7)) (= (= _let_7 _let_22) (exists ((V754l_27_2E0 u) (V755e1_2E0 u) (V756e2_2E0 u) (V757e3_2E0 u) (V758e4_2E0 u) (V759e5_2E0 u) (V760e6_2E0 u) (V761e7_2E0 u) (V762e8_2E0 u) (V763e9_2E0 u) (V764e10_2E0 u) (V765e11_2E0 u) (V766e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V754l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V755e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V756e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V757e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V758e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V759e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V760e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V761e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V762e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V763e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V764e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V765e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V766e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (exists ((V767l_27_2E0 u) (V768e1_2E0 u) (V769e2_2E0 u) (V770e3_2E0 u) (V771e4_2E0 u) (V772e5_2E0 u) (V773e6_2E0 u) (V774e7_2E0 u) (V775e8_2E0 u) (V776e9_2E0 u) (V777e10_2E0 u) (V778e11_2E0 u) (V779e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V767l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V768e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V769e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V770e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V771e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V772e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V773e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V774e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V775e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V776e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V777e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V778e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V779e12_2E0)) _let_2)))))))))))))))))))))))))))))) (= _let_22 _let_7)) (= (exists ((V780l_27_2E0 u) (V781e1_2E0 u) (V782e2_2E0 u) (V783e3_2E0 u) (V784e4_2E0 u) (V785e5_2E0 u) (V786e6_2E0 u) (V787e7_2E0 u) (V788e8_2E0 u) (V789e9_2E0 u) (V790e10_2E0 u) (V791e11_2E0 u) (V792e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V780l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V781e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V782e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V783e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V784e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V785e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V786e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V787e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V788e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V789e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V790e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V791e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V792e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_23)) (= (= _let_7 _let_21) (exists ((V806e1_2E0 u) (V807e2_2E0 u) (V808e3_2E0 u) (V809e4_2E0 u) (V810e5_2E0 u) (V811e6_2E0 u) (V812e7_2E0 u) (V813e8_2E0 u) (V814e9_2E0 u) (V815e10_2E0 u) (V816e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V806e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V807e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V808e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V809e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V810e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V811e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V812e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V813e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V814e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V815e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V816e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))) (= (exists ((V817e1_2E0 u) (V818e2_2E0 u) (V819e3_2E0 u) (V820e4_2E0 u) (V821e5_2E0 u) (V822e6_2E0 u) (V823e7_2E0 u) (V824e8_2E0 u) (V825e9_2E0 u) (V826e10_2E0 u) (V827e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V817e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V818e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V819e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V820e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V821e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V822e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V823e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V824e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V825e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V826e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V827e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))) (= _let_21 _let_7)) (= (exists ((V828l_27_2E0 u) (V829e1_2E0 u) (V830e2_2E0 u) (V831e3_2E0 u) (V832e4_2E0 u) (V833e5_2E0 u) (V834e6_2E0 u) (V835e7_2E0 u) (V836e8_2E0 u) (V837e9_2E0 u) (V838e10_2E0 u) (V839e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V829e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V830e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V831e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V832e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V833e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V834e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V835e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V836e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V837e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V838e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V839e11_2E0)) (_let_1 V828l_27_2E0))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_25) _let_7)) (= (exists ((V876l_27_2E0 u) (V877e1_2E0 u) (V878e2_2E0 u) (V879e3_2E0 u) (V880e4_2E0 u) (V881e5_2E0 u) (V882e6_2E0 u) (V883e7_2E0 u) (V884e8_2E0 u) (V885e9_2E0 u) (V886e10_2E0 u) (V887e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V876l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V877e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V878e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V879e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V880e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V881e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V882e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V883e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V884e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V885e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V886e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V887e11_2E0)) _let_2)))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_27) _let_7)) (= (exists ((V888l_27_2E0 u) (V889e1_2E0 u) (V890e2_2E0 u) (V891e3_2E0 u) (V892e4_2E0 u) (V893e5_2E0 u) (V894e6_2E0 u) (V895e7_2E0 u) (V896e8_2E0 u) (V897e9_2E0 u) (V898e10_2E0 u) (V899e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V888l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V889e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V890e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V891e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V892e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V893e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V894e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V895e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V896e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V897e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V898e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V899e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_27)) (= (exists ((V936l_27_2E0 u) (V937e1_2E0 u) (V938e2_2E0 u) (V939e3_2E0 u) (V940e4_2E0 u) (V941e5_2E0 u) (V942e6_2E0 u) (V943e7_2E0 u) (V944e8_2E0 u) (V945e9_2E0 u) (V946e10_2E0 u) (V947e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V936l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V937e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V938e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V939e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V940e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V941e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V942e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V943e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V944e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V945e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V946e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V947e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_27 _let_7)) (= (= _let_7 _let_26) (exists ((V948l_27_2E0 u) (V949e1_2E0 u) (V950e2_2E0 u) (V951e3_2E0 u) (V952e4_2E0 u) (V953e5_2E0 u) (V954e6_2E0 u) (V955e7_2E0 u) (V956e8_2E0 u) (V957e9_2E0 u) (V958e10_2E0 u) (V959e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V948l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V949e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V950e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V951e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V952e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V953e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V954e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V955e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V956e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V957e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V958e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V959e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V992l_27_2E0 u) (V993e1_2E0 u) (V994e2_2E0 u) (V995e3_2E0 u) (V996e4_2E0 u) (V997e5_2E0 u) (V998e6_2E0 u) (V999e7_2E0 u) (V1000e8_2E0 u) (V1001e9_2E0 u) (V1002e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V993e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V994e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V995e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V996e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V997e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V998e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V999e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1000e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1001e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1002e10_2E0)) (_let_1 V992l_27_2E0))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_28) _let_7)) (= (exists ((V1014l_27_2E0 u) (V1015e1_2E0 u) (V1016e2_2E0 u) (V1017e3_2E0 u) (V1018e4_2E0 u) (V1019e5_2E0 u) (V1020e6_2E0 u) (V1021e7_2E0 u) (V1022e8_2E0 u) (V1023e9_2E0 u) (V1024e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1015e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1016e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1017e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1018e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1019e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1020e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1021e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1022e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1023e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1024e10_2E0)) (_let_1 V1014l_27_2E0))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_25) _let_7)) (= (_let_9 _let_25) (exists ((V1025l_27_2E0 u) (V1026e1_2E0 u) (V1027e2_2E0 u) (V1028e3_2E0 u) (V1029e4_2E0 u) (V1030e5_2E0 u) (V1031e6_2E0 u) (V1032e7_2E0 u) (V1033e8_2E0 u) (V1034e9_2E0 u) (V1035e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1026e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1027e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1028e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1029e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1030e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1031e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1032e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1033e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1034e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1035e10_2E0)) (_let_1 V1025l_27_2E0)))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_29) _let_7) (exists ((V1036l_27_2E0 u) (V1037e1_2E0 u) (V1038e2_2E0 u) (V1039e3_2E0 u) (V1040e4_2E0 u) (V1041e5_2E0 u) (V1042e6_2E0 u) (V1043e7_2E0 u) (V1044e8_2E0 u) (V1045e9_2E0 u) (V1046e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1036l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1037e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1038e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1039e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1040e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1041e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1042e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1043e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1044e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1045e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1046e10_2E0)) _let_2))))))))))))))))))))))))))) (= (exists ((V1080l_27_2E0 u) (V1081e1_2E0 u) (V1082e2_2E0 u) (V1083e3_2E0 u) (V1084e4_2E0 u) (V1085e5_2E0 u) (V1086e6_2E0 u) (V1087e7_2E0 u) (V1088e8_2E0 u) (V1089e9_2E0 u) (V1090e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1080l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1081e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1082e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1083e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1084e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1085e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1086e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1087e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1088e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1089e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1090e10_2E0)) _let_2)))))))))))))))))))))))))) (= _let_7 _let_29)) (= (exists ((V1091l_27_2E0 u) (V1092e1_2E0 u) (V1093e2_2E0 u) (V1094e3_2E0 u) (V1095e4_2E0 u) (V1096e5_2E0 u) (V1097e6_2E0 u) (V1098e7_2E0 u) (V1099e8_2E0 u) (V1100e9_2E0 u) (V1101e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1091l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1092e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1093e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1094e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1095e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1096e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1097e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1098e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1099e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1100e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1101e10_2E0)) _let_2)))))))))))))))))))))))))) (= _let_29 _let_7)) (= (exists ((V1124e1_2E0 u) (V1125e2_2E0 u) (V1126e3_2E0 u) (V1127e4_2E0 u) (V1128e5_2E0 u) (V1129e6_2E0 u) (V1130e7_2E0 u) (V1131e8_2E0 u) (V1132e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1124e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1125e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1126e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1127e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1128e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1129e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1130e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1131e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1132e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (= _let_7 _let_28)) (= (_let_9 _let_33) (exists ((V1212l_27_2E0 u) (V1213e1_2E0 u) (V1214e2_2E0 u) (V1215e3_2E0 u) (V1216e4_2E0 u) (V1217e5_2E0 u) (V1218e6_2E0 u) (V1219e7_2E0 u) (V1220e8_2E0 u) (V1221e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1212l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1213e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1214e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1215e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1216e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1217e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1218e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1219e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1220e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1221e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1287l_27_2E0 u) (V1288e1_2E0 u) (V1289e2_2E0 u) (V1290e3_2E0 u) (V1291e4_2E0 u) (V1292e5_2E0 u) (V1293e6_2E0 u) (V1294e7_2E0 u) (V1295e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1288e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1289e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1290e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1291e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1292e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1293e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1294e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1295e8_2E0)) (_let_1 V1287l_27_2E0))))))))))))))))))))) (_let_18 _let_34)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_31) _let_7) (exists ((V1296l_27_2E0 u) (V1297e1_2E0 u) (V1298e2_2E0 u) (V1299e3_2E0 u) (V1300e4_2E0 u) (V1301e5_2E0 u) (V1302e6_2E0 u) (V1303e7_2E0 u) (V1304e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1297e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1298e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1299e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1300e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1301e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1302e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1303e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1304e8_2E0)) (_let_1 V1296l_27_2E0)))))))))))))))))))))) (= (_let_9 _let_31) (exists ((V1305l_27_2E0 u) (V1306e1_2E0 u) (V1307e2_2E0 u) (V1308e3_2E0 u) (V1309e4_2E0 u) (V1310e5_2E0 u) (V1311e6_2E0 u) (V1312e7_2E0 u) (V1313e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1306e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1307e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1308e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1309e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1310e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1311e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1312e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1313e8_2E0)) (_let_1 V1305l_27_2E0)))))))))))))))))))))) (= (_let_9 _let_36) (exists ((V1341l_27_2E0 u) (V1342e1_2E0 u) (V1343e2_2E0 u) (V1344e3_2E0 u) (V1345e4_2E0 u) (V1346e5_2E0 u) (V1347e6_2E0 u) (V1348e7_2E0 u) (V1349e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1341l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1342e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1343e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1344e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1345e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1346e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1347e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1348e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1349e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_35 _let_7) (exists ((V1359l_27_2E0 u) (V1360e1_2E0 u) (V1361e2_2E0 u) (V1362e3_2E0 u) (V1363e4_2E0 u) (V1364e5_2E0 u) (V1365e6_2E0 u) (V1366e7_2E0 u) (V1367e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1359l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1360e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1361e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1362e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1363e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1364e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1365e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1366e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1367e8_2E0)) _let_2))))))))))))))))))))))) (= (= _let_7 _let_36) (exists ((V1368l_27_2E0 u) (V1369e1_2E0 u) (V1370e2_2E0 u) (V1371e3_2E0 u) (V1372e4_2E0 u) (V1373e5_2E0 u) (V1374e6_2E0 u) (V1375e7_2E0 u) (V1376e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1368l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1369e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1370e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1371e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1372e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1373e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1374e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1375e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1376e8_2E0)) _let_2))))))))))))))))))))))) (= (= _let_7 _let_34) (exists ((V1386e1_2E0 u) (V1387e2_2E0 u) (V1388e3_2E0 u) (V1389e4_2E0 u) (V1390e5_2E0 u) (V1391e6_2E0 u) (V1392e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1386e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1387e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1388e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1389e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1390e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1391e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1392e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (exists ((V1400l_27_2E0 u) (V1401e1_2E0 u) (V1402e2_2E0 u) (V1403e3_2E0 u) (V1404e4_2E0 u) (V1405e5_2E0 u) (V1406e6_2E0 u) (V1407e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1401e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1402e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1403e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1404e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1405e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1406e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1407e7_2E0)) (_let_1 V1400l_27_2E0))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_37) _let_7)) (= (exists ((V1416l_27_2E0 u) (V1417e1_2E0 u) (V1418e2_2E0 u) (V1419e3_2E0 u) (V1420e4_2E0 u) (V1421e5_2E0 u) (V1422e6_2E0 u) (V1423e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1417e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1418e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1419e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1420e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1421e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1422e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1423e7_2E0)) (_let_1 V1416l_27_2E0))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_34) _let_7)) (= (_let_9 _let_34) (exists ((V1424l_27_2E0 u) (V1425e1_2E0 u) (V1426e2_2E0 u) (V1427e3_2E0 u) (V1428e4_2E0 u) (V1429e5_2E0 u) (V1430e6_2E0 u) (V1431e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1425e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1426e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1427e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1428e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1429e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1430e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1431e7_2E0)) (_let_1 V1424l_27_2E0)))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_39) _let_7) (exists ((V1432l_27_2E0 u) (V1433e1_2E0 u) (V1434e2_2E0 u) (V1435e3_2E0 u) (V1436e4_2E0 u) (V1437e5_2E0 u) (V1438e6_2E0 u) (V1439e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1432l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1433e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1434e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1435e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1436e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1437e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1438e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1439e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1440l_27_2E0 u) (V1441e1_2E0 u) (V1442e2_2E0 u) (V1443e3_2E0 u) (V1444e4_2E0 u) (V1445e5_2E0 u) (V1446e6_2E0 u) (V1447e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1440l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1441e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1442e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1443e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1444e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1445e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1446e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1447e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_39)) (= (_let_9 _let_38) (exists ((V1456l_27_2E0 u) (V1457e1_2E0 u) (V1458e2_2E0 u) (V1459e3_2E0 u) (V1460e4_2E0 u) (V1461e5_2E0 u) (V1462e6_2E0 u) (V1463e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1456l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1457e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1458e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1459e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1460e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1461e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1462e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1463e7_2E0)) _let_2))))))))))))))))))))) (= (exists ((V1472l_27_2E0 u) (V1473e1_2E0 u) (V1474e2_2E0 u) (V1475e3_2E0 u) (V1476e4_2E0 u) (V1477e5_2E0 u) (V1478e6_2E0 u) (V1479e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1472l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1473e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1474e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1475e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1476e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1477e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1478e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1479e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_39 _let_7)) (= (= _let_38 _let_7) (exists ((V1488l_27_2E0 u) (V1489e1_2E0 u) (V1490e2_2E0 u) (V1491e3_2E0 u) (V1492e4_2E0 u) (V1493e5_2E0 u) (V1494e6_2E0 u) (V1495e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1488l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1489e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1490e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1491e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1492e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1493e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1494e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1495e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1496e1_2E0 u) (V1497e2_2E0 u) (V1498e3_2E0 u) (V1499e4_2E0 u) (V1500e5_2E0 u) (V1501e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1496e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1497e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1498e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1499e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1500e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1501e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) (= _let_7 _let_37)) (= (exists ((V1502e1_2E0 u) (V1503e2_2E0 u) (V1504e3_2E0 u) (V1505e4_2E0 u) (V1506e5_2E0 u) (V1507e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1502e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1503e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1504e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1505e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1506e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1507e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) (= _let_37 _let_7)) (= (exists ((V1508l_27_2E0 u) (V1509e1_2E0 u) (V1510e2_2E0 u) (V1511e3_2E0 u) (V1512e4_2E0 u) (V1513e5_2E0 u) (V1514e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1509e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1510e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1511e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1512e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1513e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1514e6_2E0)) (_let_1 V1508l_27_2E0))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_40) _let_7)) (= (exists ((V1522l_27_2E0 u) (V1523e1_2E0 u) (V1524e2_2E0 u) (V1525e3_2E0 u) (V1526e4_2E0 u) (V1527e5_2E0 u) (V1528e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1523e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1524e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1525e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1526e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1527e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1528e6_2E0)) (_let_1 V1522l_27_2E0))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_37) _let_7)) (= (exists ((V1529l_27_2E0 u) (V1530e1_2E0 u) (V1531e2_2E0 u) (V1532e3_2E0 u) (V1533e4_2E0 u) (V1534e5_2E0 u) (V1535e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1530e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1531e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1532e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1533e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1534e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1535e6_2E0)) (_let_1 V1529l_27_2E0))))))))))))))))) (_let_9 _let_37)) (= (exists ((V1536l_27_2E0 u) (V1537e1_2E0 u) (V1538e2_2E0 u) (V1539e3_2E0 u) (V1540e4_2E0 u) (V1541e5_2E0 u) (V1542e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1536l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1537e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1538e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1539e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1540e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1541e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1542e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_41) _let_7)) (= (= _let_7 _let_41) (exists ((V1564l_27_2E0 u) (V1565e1_2E0 u) (V1566e2_2E0 u) (V1567e3_2E0 u) (V1568e4_2E0 u) (V1569e5_2E0 u) (V1570e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1564l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1565e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1566e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1567e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1568e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1569e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1570e6_2E0)) _let_2))))))))))))))))))) (= (= _let_41 _let_7) (exists ((V1571l_27_2E0 u) (V1572e1_2E0 u) (V1573e2_2E0 u) (V1574e3_2E0 u) (V1575e4_2E0 u) (V1576e5_2E0 u) (V1577e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1571l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1572e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1573e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1574e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1575e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1576e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1577e6_2E0)) _let_2))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1578l_27_2E0 u) (V1579e1_2E0 u) (V1580e2_2E0 u) (V1581e3_2E0 u) (V1582e4_2E0 u) (V1583e5_2E0 u) (V1584e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1578l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1579e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1580e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1581e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1582e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1583e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1584e6_2E0)) _let_2))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_42)) (= (= _let_42 _let_7) (exists ((V1585l_27_2E0 u) (V1586e1_2E0 u) (V1587e2_2E0 u) (V1588e3_2E0 u) (V1589e4_2E0 u) (V1590e5_2E0 u) (V1591e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1585l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1586e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1587e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1588e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1589e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1590e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1591e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V1592e1_2E0 u) (V1593e2_2E0 u) (V1594e3_2E0 u) (V1595e4_2E0 u) (V1596e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1592e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1593e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1594e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1595e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1596e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) (= _let_7 _let_40)) (= (exists ((V1602l_27_2E0 u) (V1603e1_2E0 u) (V1604e2_2E0 u) (V1605e3_2E0 u) (V1606e4_2E0 u) (V1607e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1603e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1604e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1605e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1606e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1607e5_2E0)) (_let_1 V1602l_27_2E0))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_43) _let_7)) (= (exists ((V1620l_27_2E0 u) (V1621e1_2E0 u) (V1622e2_2E0 u) (V1623e3_2E0 u) (V1624e4_2E0 u) (V1625e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1621e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1622e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1623e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1624e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1625e5_2E0)) (_let_1 V1620l_27_2E0))))))))))))))) (_let_9 _let_40)) (= (_let_9 _let_44) (exists ((V1632l_27_2E0 u) (V1633e1_2E0 u) (V1634e2_2E0 u) (V1635e3_2E0 u) (V1636e4_2E0 u) (V1637e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1632l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1633e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1634e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1635e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1636e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1637e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1638l_27_2E0 u) (V1639e1_2E0 u) (V1640e2_2E0 u) (V1641e3_2E0 u) (V1642e4_2E0 u) (V1643e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1638l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1639e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1640e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1641e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1642e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1643e5_2E0)) _let_2)))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_45) _let_7)) (= (= _let_7 _let_44) (exists ((V1650l_27_2E0 u) (V1651e1_2E0 u) (V1652e2_2E0 u) (V1653e3_2E0 u) (V1654e4_2E0 u) (V1655e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1650l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1651e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1652e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1653e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1654e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1655e5_2E0)) _let_2))))))))))))))))) (= (= _let_7 _let_43) (exists ((V1674e1_2E0 u) (V1675e2_2E0 u) (V1676e3_2E0 u) (V1677e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1674e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1675e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1676e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1677e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= (= _let_43 _let_7) (exists ((V1678e1_2E0 u) (V1679e2_2E0 u) (V1680e3_2E0 u) (V1681e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1678e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1679e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1680e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1681e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_43) _let_7) (exists ((V1692l_27_2E0 u) (V1693e1_2E0 u) (V1694e2_2E0 u) (V1695e3_2E0 u) (V1696e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1693e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1694e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1695e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1696e4_2E0)) (_let_1 V1692l_27_2E0)))))))))))))) (= (exists ((V1697l_27_2E0 u) (V1698e1_2E0 u) (V1699e2_2E0 u) (V1700e3_2E0 u) (V1701e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1698e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1699e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1700e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1701e4_2E0)) (_let_1 V1697l_27_2E0))))))))))))) (_let_9 _let_43)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_47) _let_7) (exists ((V1702l_27_2E0 u) (V1703e1_2E0 u) (V1704e2_2E0 u) (V1705e3_2E0 u) (V1706e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1702l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1703e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1704e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1705e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1706e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_48 _let_7) (exists ((V1737l_27_2E0 u) (V1738e1_2E0 u) (V1739e2_2E0 u) (V1740e3_2E0 u) (V1741e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1737l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1738e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1739e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1740e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1741e4_2E0)) _let_2))))))))))))))) (= (= _let_7 _let_46) (exists ((V1742e1_2E0 u) (V1743e2_2E0 u) (V1744e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1742e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1743e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1744e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (_let_18 _let_49) (exists ((V1752l_27_2E0 u) (V1753e1_2E0 u) (V1754e2_2E0 u) (V1755e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1753e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1754e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1755e3_2E0)) (_let_1 V1752l_27_2E0)))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_46) _let_7) (exists ((V1756l_27_2E0 u) (V1757e1_2E0 u) (V1758e2_2E0 u) (V1759e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1757e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1758e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1759e3_2E0)) (_let_1 V1756l_27_2E0)))))))))))) (= (exists ((V1760l_27_2E0 u) (V1761e1_2E0 u) (V1762e2_2E0 u) (V1763e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1761e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1762e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1763e3_2E0)) (_let_1 V1760l_27_2E0))))))))))) (_let_9 _let_46)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_51) _let_7) (exists ((V1764l_27_2E0 u) (V1765e1_2E0 u) (V1766e2_2E0 u) (V1767e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1764l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1765e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1766e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1767e3_2E0)) _let_2))))))))))))) (= (_let_9 _let_51) (exists ((V1768l_27_2E0 u) (V1769e1_2E0 u) (V1770e2_2E0 u) (V1771e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1768l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1769e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1770e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1771e3_2E0)) _let_2))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_50) _let_7) (exists ((V1772l_27_2E0 u) (V1773e1_2E0 u) (V1774e2_2E0 u) (V1775e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1772l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1773e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1774e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1775e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1780l_27_2E0 u) (V1781e1_2E0 u) (V1782e2_2E0 u) (V1783e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1780l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1781e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1782e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1783e3_2E0)) _let_2)))))))))))) (= _let_7 _let_51)) (= (exists ((V1788l_27_2E0 u) (V1789e1_2E0 u) (V1790e2_2E0 u) (V1791e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1788l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1789e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1790e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1791e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_50)) (= (exists ((V1796e1_2E0 u) (V1797e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1796e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1797e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_7 _let_49)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_52) _let_7) (exists ((V1800l_27_2E0 u) (V1801e1_2E0 u) (V1802e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1801e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1802e2_2E0)) (_let_1 V1800l_27_2E0)))))))))) (= (exists ((V1806l_27_2E0 u) (V1807e1_2E0 u) (V1808e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1807e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1808e2_2E0)) (_let_1 V1806l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_49) _let_7)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_53) _let_7) (exists ((V1812l_27_2E0 u) (V1813e1_2E0 u) (V1814e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1812l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1813e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1814e2_2E0)) _let_2))))))))))) (= (exists ((V1827l_27_2E0 u) (V1828e1_2E0 u) (V1829e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1827l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1828e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1829e2_2E0)) _let_2)))))))))) (= _let_53 _let_7)) (= (exists ((V1830l_27_2E0 u) (V1831e1_2E0 u) (V1832e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1830l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1831e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1832e2_2E0)) _let_2)))))))))) (= _let_7 _let_54)) (= (= _let_7 _let_52) (exists ((V1836e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1836e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (= _let_52 _let_7) (exists ((V1837e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1837e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_7) (exists ((V1838l_27_2E0 u) (V1839e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1839e1_2E0)) (_let_1 V1838l_27_2E0))))))) (= (_let_18 mono_2Ec_2Enum_2E0) (exists ((V1840l_27_2E0 u) (V1841e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1841e1_2E0)) (_let_1 V1840l_27_2E0))))))) (= (exists ((V1846l_27_2E0 u) (V1847e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1846l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1847e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_55) _let_7)) (= (exists ((V1850l_27_2E0 u) (V1851e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1850l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1851e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_56) _let_7)) (= (= _let_7 _let_55) (exists ((V1854l_27_2E0 u) (V1855e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1854l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1855e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_55 _let_7) (exists ((V1856l_27_2E0 u) (V1857e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1856l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1857e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_57 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_7)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_7) mono_2Ec_2Enum_2E0) _let_57) (= _let_57 ((mono_2Ec_2Earithmetic_2E_3E _let_52) _let_7)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_7) _let_52) _let_57) (= _let_57 (= mono_2Ec_2Enum_2E0 _let_7)) (= _let_57 (= _let_7 mono_2Ec_2Enum_2E0)) (= (exists ((V1860l_27_2E0 u) (V1861e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1860l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1861e1_2E0)) _let_2))))))) (= _let_56 _let_7)) (= (= _let_7 _let_56) (exists ((V1858l_27_2E0 u) (V1859e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1858l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1859e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V1852l_27_2E0 u) (V1853e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1852l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1853e1_2E0)) _let_2))))))) (_let_9 _let_56)) (= (exists ((V1848l_27_2E0 u) (V1849e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1848l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1849e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_9 _let_55)) (= (exists ((V1844l_27_2E0 u) (V1845e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1845e1_2E0)) (_let_1 V1844l_27_2E0)))))) (_let_9 _let_52)) (= (exists ((V1842l_27_2E0 u) (V1843e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1843e1_2E0)) (_let_1 V1842l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_52) _let_7)) (= (= _let_54 _let_7) (exists ((V1833l_27_2E0 u) (V1834e1_2E0 u) (V1835e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1833l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1834e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1835e2_2E0)) _let_2))))))))))) (= (exists ((V1824l_27_2E0 u) (V1825e1_2E0 u) (V1826e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1824l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1825e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1826e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_53)) (= (exists ((V1821l_27_2E0 u) (V1822e1_2E0 u) (V1823e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1821l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1822e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1823e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_54)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_54) _let_7) (exists ((V1818l_27_2E0 u) (V1819e1_2E0 u) (V1820e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1818l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1819e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1820e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1815l_27_2E0 u) (V1816e1_2E0 u) (V1817e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1815l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1816e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1817e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_53)) (= (exists ((V1809l_27_2E0 u) (V1810e1_2E0 u) (V1811e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1810e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1811e2_2E0)) (_let_1 V1809l_27_2E0))))))))) (_let_9 _let_49)) (= (exists ((V1803l_27_2E0 u) (V1804e1_2E0 u) (V1805e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1804e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1805e2_2E0)) (_let_1 V1803l_27_2E0))))))))) (_let_18 _let_52)) (= (= _let_49 _let_7) (exists ((V1798e1_2E0 u) (V1799e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1798e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1799e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (exists ((V1792l_27_2E0 u) (V1793e1_2E0 u) (V1794e2_2E0 u) (V1795e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1792l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1793e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1794e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1795e3_2E0)) _let_2)))))))))))) (= _let_50 _let_7)) (= (exists ((V1784l_27_2E0 u) (V1785e1_2E0 u) (V1786e2_2E0 u) (V1787e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1784l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1785e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1786e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1787e3_2E0)) _let_2)))))))))))) (= _let_51 _let_7)) (= (exists ((V1776l_27_2E0 u) (V1777e1_2E0 u) (V1778e2_2E0 u) (V1779e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1776l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1777e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1778e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1779e3_2E0)) _let_2)))))))))))) (_let_9 _let_50)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_49) _let_7) (exists ((V1748l_27_2E0 u) (V1749e1_2E0 u) (V1750e2_2E0 u) (V1751e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1749e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1750e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1751e3_2E0)) (_let_1 V1748l_27_2E0)))))))))))) (= (exists ((V1745e1_2E0 u) (V1746e2_2E0 u) (V1747e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1745e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1746e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1747e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_46 _let_7)) (= (exists ((V1732l_27_2E0 u) (V1733e1_2E0 u) (V1734e2_2E0 u) (V1735e3_2E0 u) (V1736e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1732l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1733e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1734e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1735e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1736e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_48)) (= (exists ((V1727l_27_2E0 u) (V1728e1_2E0 u) (V1729e2_2E0 u) (V1730e3_2E0 u) (V1731e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1727l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1728e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1729e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1730e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1731e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_47 _let_7)) (= (exists ((V1722l_27_2E0 u) (V1723e1_2E0 u) (V1724e2_2E0 u) (V1725e3_2E0 u) (V1726e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1722l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1723e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1724e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1725e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1726e4_2E0)) _let_2)))))))))))))) (= _let_7 _let_47)) (= (_let_9 _let_48) (exists ((V1717l_27_2E0 u) (V1718e1_2E0 u) (V1719e2_2E0 u) (V1720e3_2E0 u) (V1721e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1717l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1718e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1719e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1720e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1721e4_2E0)) _let_2))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_48) _let_7) (exists ((V1712l_27_2E0 u) (V1713e1_2E0 u) (V1714e2_2E0 u) (V1715e3_2E0 u) (V1716e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1712l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1713e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1714e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1715e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1716e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_9 _let_47) (exists ((V1707l_27_2E0 u) (V1708e1_2E0 u) (V1709e2_2E0 u) (V1710e3_2E0 u) (V1711e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1707l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1708e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1709e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1710e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1711e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_18 _let_46) (exists ((V1687l_27_2E0 u) (V1688e1_2E0 u) (V1689e2_2E0 u) (V1690e3_2E0 u) (V1691e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1688e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1689e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1690e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1691e4_2E0)) (_let_1 V1687l_27_2E0)))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_46) _let_7) (exists ((V1682l_27_2E0 u) (V1683e1_2E0 u) (V1684e2_2E0 u) (V1685e3_2E0 u) (V1686e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1683e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1684e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1685e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1686e4_2E0)) (_let_1 V1682l_27_2E0)))))))))))))) (= (exists ((V1668l_27_2E0 u) (V1669e1_2E0 u) (V1670e2_2E0 u) (V1671e3_2E0 u) (V1672e4_2E0 u) (V1673e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1668l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1669e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1670e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1671e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1672e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1673e5_2E0)) _let_2)))))))))))))))) (= _let_45 _let_7)) (= (exists ((V1662l_27_2E0 u) (V1663e1_2E0 u) (V1664e2_2E0 u) (V1665e3_2E0 u) (V1666e4_2E0 u) (V1667e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1662l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1663e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1664e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1665e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1666e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1667e5_2E0)) _let_2)))))))))))))))) (= _let_7 _let_45)) (= (exists ((V1656l_27_2E0 u) (V1657e1_2E0 u) (V1658e2_2E0 u) (V1659e3_2E0 u) (V1660e4_2E0 u) (V1661e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1656l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1657e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1658e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1659e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1660e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1661e5_2E0)) _let_2)))))))))))))))) (= _let_44 _let_7)) (= (exists ((V1644l_27_2E0 u) (V1645e1_2E0 u) (V1646e2_2E0 u) (V1647e3_2E0 u) (V1648e4_2E0 u) (V1649e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1644l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1645e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1646e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1647e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1648e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1649e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_45)) (= (exists ((V1626l_27_2E0 u) (V1627e1_2E0 u) (V1628e2_2E0 u) (V1629e3_2E0 u) (V1630e4_2E0 u) (V1631e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1626l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1627e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1628e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1629e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1630e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1631e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_44) _let_7)) (= (exists ((V1614l_27_2E0 u) (V1615e1_2E0 u) (V1616e2_2E0 u) (V1617e3_2E0 u) (V1618e4_2E0 u) (V1619e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1615e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1616e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1617e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1618e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1619e5_2E0)) (_let_1 V1614l_27_2E0))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_40) _let_7)) (= (_let_18 _let_43) (exists ((V1608l_27_2E0 u) (V1609e1_2E0 u) (V1610e2_2E0 u) (V1611e3_2E0 u) (V1612e4_2E0 u) (V1613e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1609e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1610e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1611e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1612e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1613e5_2E0)) (_let_1 V1608l_27_2E0)))))))))))))))) (= (= _let_40 _let_7) (exists ((V1597e1_2E0 u) (V1598e2_2E0 u) (V1599e3_2E0 u) (V1600e4_2E0 u) (V1601e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1597e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1598e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1599e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1600e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1601e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (exists ((V1557l_27_2E0 u) (V1558e1_2E0 u) (V1559e2_2E0 u) (V1560e3_2E0 u) (V1561e4_2E0 u) (V1562e5_2E0 u) (V1563e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1557l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1558e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1559e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1560e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1561e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1562e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1563e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_42)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_42) _let_7) (exists ((V1550l_27_2E0 u) (V1551e1_2E0 u) (V1552e2_2E0 u) (V1553e3_2E0 u) (V1554e4_2E0 u) (V1555e5_2E0 u) (V1556e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1550l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1551e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1552e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1553e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1554e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1555e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1556e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_9 _let_41) (exists ((V1543l_27_2E0 u) (V1544e1_2E0 u) (V1545e2_2E0 u) (V1546e3_2E0 u) (V1547e4_2E0 u) (V1548e5_2E0 u) (V1549e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1543l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1544e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1545e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1546e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1547e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1548e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1549e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1515l_27_2E0 u) (V1516e1_2E0 u) (V1517e2_2E0 u) (V1518e3_2E0 u) (V1519e4_2E0 u) (V1520e5_2E0 u) (V1521e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1516e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1517e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1518e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1519e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1520e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1521e6_2E0)) (_let_1 V1515l_27_2E0))))))))))))))))) (_let_18 _let_40)) (= (exists ((V1480l_27_2E0 u) (V1481e1_2E0 u) (V1482e2_2E0 u) (V1483e3_2E0 u) (V1484e4_2E0 u) (V1485e5_2E0 u) (V1486e6_2E0 u) (V1487e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1480l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1481e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1482e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1483e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1484e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1485e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1486e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1487e7_2E0)) _let_2)))))))))))))))))))) (= _let_7 _let_38)) (= (exists ((V1464l_27_2E0 u) (V1465e1_2E0 u) (V1466e2_2E0 u) (V1467e3_2E0 u) (V1468e4_2E0 u) (V1469e5_2E0 u) (V1470e6_2E0 u) (V1471e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1464l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1465e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1466e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1467e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1468e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1469e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1470e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1471e7_2E0)) _let_2)))))))))))))))))))) (= _let_7 _let_39)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_38) _let_7) (exists ((V1448l_27_2E0 u) (V1449e1_2E0 u) (V1450e2_2E0 u) (V1451e3_2E0 u) (V1452e4_2E0 u) (V1453e5_2E0 u) (V1454e6_2E0 u) (V1455e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1448l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1449e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1450e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1451e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1452e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1453e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1454e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1455e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1408l_27_2E0 u) (V1409e1_2E0 u) (V1410e2_2E0 u) (V1411e3_2E0 u) (V1412e4_2E0 u) (V1413e5_2E0 u) (V1414e6_2E0 u) (V1415e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1409e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1410e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1411e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1412e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1413e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1414e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1415e7_2E0)) (_let_1 V1408l_27_2E0))))))))))))))))))) (_let_18 _let_37)) (= (= _let_34 _let_7) (exists ((V1393e1_2E0 u) (V1394e2_2E0 u) (V1395e3_2E0 u) (V1396e4_2E0 u) (V1397e5_2E0 u) (V1398e6_2E0 u) (V1399e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1393e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1394e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1395e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1396e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1397e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1398e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1399e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (exists ((V1377l_27_2E0 u) (V1378e1_2E0 u) (V1379e2_2E0 u) (V1380e3_2E0 u) (V1381e4_2E0 u) (V1382e5_2E0 u) (V1383e6_2E0 u) (V1384e7_2E0 u) (V1385e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1377l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1378e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1379e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1380e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1381e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1382e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1383e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1384e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1385e8_2E0)) _let_2)))))))))))))))))))))) (= _let_36 _let_7)) (= (exists ((V1350l_27_2E0 u) (V1351e1_2E0 u) (V1352e2_2E0 u) (V1353e3_2E0 u) (V1354e4_2E0 u) (V1355e5_2E0 u) (V1356e6_2E0 u) (V1357e7_2E0 u) (V1358e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1350l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1351e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1352e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1353e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1354e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1355e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1356e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1357e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1358e8_2E0)) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_7 _let_35)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_36) _let_7) (exists ((V1332l_27_2E0 u) (V1333e1_2E0 u) (V1334e2_2E0 u) (V1335e3_2E0 u) (V1336e4_2E0 u) (V1337e5_2E0 u) (V1338e6_2E0 u) (V1339e7_2E0 u) (V1340e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1332l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1333e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1334e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1335e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1336e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1337e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1338e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1339e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1340e8_2E0)) _let_2))))))))))))))))))))))) (= (exists ((V1323l_27_2E0 u) (V1324e1_2E0 u) (V1325e2_2E0 u) (V1326e3_2E0 u) (V1327e4_2E0 u) (V1328e5_2E0 u) (V1329e6_2E0 u) (V1330e7_2E0 u) (V1331e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1323l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1324e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1325e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1326e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1327e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1328e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1329e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1330e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1331e8_2E0)) _let_2)))))))))))))))))))))) (_let_9 _let_35)) (= (exists ((V1314l_27_2E0 u) (V1315e1_2E0 u) (V1316e2_2E0 u) (V1317e3_2E0 u) (V1318e4_2E0 u) (V1319e5_2E0 u) (V1320e6_2E0 u) (V1321e7_2E0 u) (V1322e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1314l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1315e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1316e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1317e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1318e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1319e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1320e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1321e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1322e8_2E0)) _let_2)))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_35) _let_7)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_34) _let_7) (exists ((V1278l_27_2E0 u) (V1279e1_2E0 u) (V1280e2_2E0 u) (V1281e3_2E0 u) (V1282e4_2E0 u) (V1283e5_2E0 u) (V1284e6_2E0 u) (V1285e7_2E0 u) (V1286e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1279e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1280e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1281e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1282e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1283e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1284e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1285e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1286e8_2E0)) (_let_1 V1278l_27_2E0)))))))))))))))))))))) (= (exists ((V1270e1_2E0 u) (V1271e2_2E0 u) (V1272e3_2E0 u) (V1273e4_2E0 u) (V1274e5_2E0 u) (V1275e6_2E0 u) (V1276e7_2E0 u) (V1277e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1270e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1271e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1272e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1273e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1274e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1275e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1276e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1277e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_31 _let_7)) (= (exists ((V1262e1_2E0 u) (V1263e2_2E0 u) (V1264e3_2E0 u) (V1265e4_2E0 u) (V1266e5_2E0 u) (V1267e6_2E0 u) (V1268e7_2E0 u) (V1269e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1262e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1263e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1264e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1265e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1266e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1267e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1268e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1269e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_7 _let_31)) (= (exists ((V1252l_27_2E0 u) (V1253e1_2E0 u) (V1254e2_2E0 u) (V1255e3_2E0 u) (V1256e4_2E0 u) (V1257e5_2E0 u) (V1258e6_2E0 u) (V1259e7_2E0 u) (V1260e8_2E0 u) (V1261e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1252l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1253e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1254e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1255e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1256e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1257e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1258e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1259e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1260e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1261e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_33 _let_7)) (= (= _let_7 _let_33) (exists ((V1242l_27_2E0 u) (V1243e1_2E0 u) (V1244e2_2E0 u) (V1245e3_2E0 u) (V1246e4_2E0 u) (V1247e5_2E0 u) (V1248e6_2E0 u) (V1249e7_2E0 u) (V1250e8_2E0 u) (V1251e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1242l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1243e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1244e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1245e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1246e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1247e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1248e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1249e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1250e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1251e9_2E0)) _let_2))))))))))))))))))))))))) (= (exists ((V1232l_27_2E0 u) (V1233e1_2E0 u) (V1234e2_2E0 u) (V1235e3_2E0 u) (V1236e4_2E0 u) (V1237e5_2E0 u) (V1238e6_2E0 u) (V1239e7_2E0 u) (V1240e8_2E0 u) (V1241e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1232l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1233e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1234e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1235e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1236e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1237e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1238e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1239e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1240e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1241e9_2E0)) _let_2)))))))))))))))))))))))) (= _let_32 _let_7)) (= (= _let_7 _let_32) (exists ((V1222l_27_2E0 u) (V1223e1_2E0 u) (V1224e2_2E0 u) (V1225e3_2E0 u) (V1226e4_2E0 u) (V1227e5_2E0 u) (V1228e6_2E0 u) (V1229e7_2E0 u) (V1230e8_2E0 u) (V1231e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1222l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1223e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1224e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1225e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1226e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1227e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1228e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1229e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1230e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1231e9_2E0)) _let_2))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_33) _let_7) (exists ((V1202l_27_2E0 u) (V1203e1_2E0 u) (V1204e2_2E0 u) (V1205e3_2E0 u) (V1206e4_2E0 u) (V1207e5_2E0 u) (V1208e6_2E0 u) (V1209e7_2E0 u) (V1210e8_2E0 u) (V1211e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1202l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1203e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1204e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1205e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1206e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1207e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1208e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1209e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1210e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1211e9_2E0)) _let_2))))))))))))))))))))))))) (= (_let_9 _let_32) (exists ((V1192l_27_2E0 u) (V1193e1_2E0 u) (V1194e2_2E0 u) (V1195e3_2E0 u) (V1196e4_2E0 u) (V1197e5_2E0 u) (V1198e6_2E0 u) (V1199e7_2E0 u) (V1200e8_2E0 u) (V1201e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1192l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1193e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1194e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1195e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1196e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1197e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1198e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1199e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1200e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1201e9_2E0)) _let_2))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_32) _let_7) (exists ((V1182l_27_2E0 u) (V1183e1_2E0 u) (V1184e2_2E0 u) (V1185e3_2E0 u) (V1186e4_2E0 u) (V1187e5_2E0 u) (V1188e6_2E0 u) (V1189e7_2E0 u) (V1190e8_2E0 u) (V1191e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1182l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1191e9_2E0)) _let_2))))))))))))))))))))))))) (= (exists ((V1172l_27_2E0 u) (V1173e1_2E0 u) (V1174e2_2E0 u) (V1175e3_2E0 u) (V1176e4_2E0 u) (V1177e5_2E0 u) (V1178e6_2E0 u) (V1179e7_2E0 u) (V1180e8_2E0 u) (V1181e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1173e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1174e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1175e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1176e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1177e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1178e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1179e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1180e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1181e9_2E0)) (_let_1 V1172l_27_2E0))))))))))))))))))))))) (_let_9 _let_28)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_28) _let_7) (exists ((V1162l_27_2E0 u) (V1163e1_2E0 u) (V1164e2_2E0 u) (V1165e3_2E0 u) (V1166e4_2E0 u) (V1167e5_2E0 u) (V1168e6_2E0 u) (V1169e7_2E0 u) (V1170e8_2E0 u) (V1171e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1163e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1164e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1165e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1166e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1167e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1168e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1169e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1170e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1171e9_2E0)) (_let_1 V1162l_27_2E0)))))))))))))))))))))))) (= (_let_18 _let_31) (exists ((V1152l_27_2E0 u) (V1153e1_2E0 u) (V1154e2_2E0 u) (V1155e3_2E0 u) (V1156e4_2E0 u) (V1157e5_2E0 u) (V1158e6_2E0 u) (V1159e7_2E0 u) (V1160e8_2E0 u) (V1161e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1153e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1154e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1155e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1156e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1157e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1158e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1159e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1160e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1161e9_2E0)) (_let_1 V1152l_27_2E0)))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_31) _let_7) (exists ((V1142l_27_2E0 u) (V1143e1_2E0 u) (V1144e2_2E0 u) (V1145e3_2E0 u) (V1146e4_2E0 u) (V1147e5_2E0 u) (V1148e6_2E0 u) (V1149e7_2E0 u) (V1150e8_2E0 u) (V1151e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1143e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1144e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1145e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1146e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1147e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1148e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1149e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1150e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1151e9_2E0)) (_let_1 V1142l_27_2E0)))))))))))))))))))))))) (= (exists ((V1133e1_2E0 u) (V1134e2_2E0 u) (V1135e3_2E0 u) (V1136e4_2E0 u) (V1137e5_2E0 u) (V1138e6_2E0 u) (V1139e7_2E0 u) (V1140e8_2E0 u) (V1141e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1133e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1134e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1135e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1136e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1137e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1138e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1139e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1140e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1141e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (= _let_28 _let_7)) (= (= _let_30 _let_7) (exists ((V1113l_27_2E0 u) (V1114e1_2E0 u) (V1115e2_2E0 u) (V1116e3_2E0 u) (V1117e4_2E0 u) (V1118e5_2E0 u) (V1119e6_2E0 u) (V1120e7_2E0 u) (V1121e8_2E0 u) (V1122e9_2E0 u) (V1123e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1113l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1114e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1115e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1116e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1117e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1118e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1119e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1120e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1121e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1122e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1123e10_2E0)) _let_2))))))))))))))))))))))))))) (= (exists ((V1102l_27_2E0 u) (V1103e1_2E0 u) (V1104e2_2E0 u) (V1105e3_2E0 u) (V1106e4_2E0 u) (V1107e5_2E0 u) (V1108e6_2E0 u) (V1109e7_2E0 u) (V1110e8_2E0 u) (V1111e9_2E0 u) (V1112e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1102l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1103e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1104e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1105e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1106e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1107e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1108e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1109e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1110e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1111e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1112e10_2E0)) _let_2)))))))))))))))))))))))))) (= _let_7 _let_30)) (= (exists ((V1069l_27_2E0 u) (V1070e1_2E0 u) (V1071e2_2E0 u) (V1072e3_2E0 u) (V1073e4_2E0 u) (V1074e5_2E0 u) (V1075e6_2E0 u) (V1076e7_2E0 u) (V1077e8_2E0 u) (V1078e9_2E0 u) (V1079e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1069l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1070e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1071e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1072e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1073e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1074e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1075e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1076e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1077e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1078e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1079e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_30)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_30) _let_7) (exists ((V1058l_27_2E0 u) (V1059e1_2E0 u) (V1060e2_2E0 u) (V1061e3_2E0 u) (V1062e4_2E0 u) (V1063e5_2E0 u) (V1064e6_2E0 u) (V1065e7_2E0 u) (V1066e8_2E0 u) (V1067e9_2E0 u) (V1068e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1058l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1059e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1060e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1061e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1062e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1063e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1064e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1065e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1066e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1067e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1068e10_2E0)) _let_2))))))))))))))))))))))))))) (= (_let_9 _let_29) (exists ((V1047l_27_2E0 u) (V1048e1_2E0 u) (V1049e2_2E0 u) (V1050e3_2E0 u) (V1051e4_2E0 u) (V1052e5_2E0 u) (V1053e6_2E0 u) (V1054e7_2E0 u) (V1055e8_2E0 u) (V1056e9_2E0 u) (V1057e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1047l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1048e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1049e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1050e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1051e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1052e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1053e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1054e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1055e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1056e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1057e10_2E0)) _let_2))))))))))))))))))))))))))) (= (exists ((V1003l_27_2E0 u) (V1004e1_2E0 u) (V1005e2_2E0 u) (V1006e3_2E0 u) (V1007e4_2E0 u) (V1008e5_2E0 u) (V1009e6_2E0 u) (V1010e7_2E0 u) (V1011e8_2E0 u) (V1012e9_2E0 u) (V1013e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1004e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1005e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1006e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1007e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1008e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1009e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1010e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1011e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1012e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1013e10_2E0)) (_let_1 V1003l_27_2E0))))))))))))))))))))))))) (_let_18 _let_28)) (= (= _let_25 _let_7) (exists ((V982e1_2E0 u) (V983e2_2E0 u) (V984e3_2E0 u) (V985e4_2E0 u) (V986e5_2E0 u) (V987e6_2E0 u) (V988e7_2E0 u) (V989e8_2E0 u) (V990e9_2E0 u) (V991e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V982e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V983e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V984e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V985e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V986e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V987e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V988e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V989e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V990e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V991e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))) (= (= _let_7 _let_25) (exists ((V972e1_2E0 u) (V973e2_2E0 u) (V974e3_2E0 u) (V975e4_2E0 u) (V976e5_2E0 u) (V977e6_2E0 u) (V978e7_2E0 u) (V979e8_2E0 u) (V980e9_2E0 u) (V981e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V972e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V973e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V974e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V975e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V976e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V977e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V978e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V979e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V980e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V981e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))) (= (exists ((V960l_27_2E0 u) (V961e1_2E0 u) (V962e2_2E0 u) (V963e3_2E0 u) (V964e4_2E0 u) (V965e5_2E0 u) (V966e6_2E0 u) (V967e7_2E0 u) (V968e8_2E0 u) (V969e9_2E0 u) (V970e10_2E0 u) (V971e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V960l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V961e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V962e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V963e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V964e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V965e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V966e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V967e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V968e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V969e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V970e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V971e11_2E0)) _let_2)))))))))))))))))))))))))))) (= _let_26 _let_7)) (= (= _let_7 _let_27) (exists ((V924l_27_2E0 u) (V925e1_2E0 u) (V926e2_2E0 u) (V927e3_2E0 u) (V928e4_2E0 u) (V929e5_2E0 u) (V930e6_2E0 u) (V931e7_2E0 u) (V932e8_2E0 u) (V933e9_2E0 u) (V934e10_2E0 u) (V935e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V924l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V925e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V926e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V927e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V928e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V929e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V930e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V931e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V932e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V933e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V934e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V935e11_2E0)) _let_2))))))))))))))))))))))))))))) (= (_let_9 _let_26) (exists ((V912l_27_2E0 u) (V913e1_2E0 u) (V914e2_2E0 u) (V915e3_2E0 u) (V916e4_2E0 u) (V917e5_2E0 u) (V918e6_2E0 u) (V919e7_2E0 u) (V920e8_2E0 u) (V921e9_2E0 u) (V922e10_2E0 u) (V923e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V912l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V913e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V914e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V915e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V916e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V917e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V918e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V919e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V920e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V921e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V922e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V923e11_2E0)) _let_2))))))))))))))))))))))))))))) (= (exists ((V900l_27_2E0 u) (V901e1_2E0 u) (V902e2_2E0 u) (V903e3_2E0 u) (V904e4_2E0 u) (V905e5_2E0 u) (V906e6_2E0 u) (V907e7_2E0 u) (V908e8_2E0 u) (V909e9_2E0 u) (V910e10_2E0 u) (V911e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V900l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V901e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V902e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V903e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V904e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V905e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V906e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V907e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V908e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V909e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V910e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V911e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_26) _let_7)) (= (_let_9 _let_21) (exists ((V864l_27_2E0 u) (V865e1_2E0 u) (V866e2_2E0 u) (V867e3_2E0 u) (V868e4_2E0 u) (V869e5_2E0 u) (V870e6_2E0 u) (V871e7_2E0 u) (V872e8_2E0 u) (V873e9_2E0 u) (V874e10_2E0 u) (V875e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V865e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V866e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V867e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V868e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V869e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V870e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V871e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V872e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V873e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V874e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V875e11_2E0)) (_let_1 V864l_27_2E0)))))))))))))))))))))))))))) (= (exists ((V852l_27_2E0 u) (V853e1_2E0 u) (V854e2_2E0 u) (V855e3_2E0 u) (V856e4_2E0 u) (V857e5_2E0 u) (V858e6_2E0 u) (V859e7_2E0 u) (V860e8_2E0 u) (V861e9_2E0 u) (V862e10_2E0 u) (V863e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V853e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V854e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V855e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V856e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V857e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V858e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V859e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V860e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V861e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V862e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V863e11_2E0)) (_let_1 V852l_27_2E0))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_21) _let_7)) (= (_let_18 _let_25) (exists ((V840l_27_2E0 u) (V841e1_2E0 u) (V842e2_2E0 u) (V843e3_2E0 u) (V844e4_2E0 u) (V845e5_2E0 u) (V846e6_2E0 u) (V847e7_2E0 u) (V848e8_2E0 u) (V849e9_2E0 u) (V850e10_2E0 u) (V851e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V841e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V842e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V843e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V844e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V845e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V846e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V847e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V848e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V849e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V850e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V851e11_2E0)) (_let_1 V840l_27_2E0)))))))))))))))))))))))))))) (= (= _let_23 _let_7) (exists ((V793l_27_2E0 u) (V794e1_2E0 u) (V795e2_2E0 u) (V796e3_2E0 u) (V797e4_2E0 u) (V798e5_2E0 u) (V799e6_2E0 u) (V800e7_2E0 u) (V801e8_2E0 u) (V802e9_2E0 u) (V803e10_2E0 u) (V804e11_2E0 u) (V805e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V793l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V794e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V795e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V796e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V797e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V798e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V799e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V800e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V801e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V802e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V803e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V804e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V805e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_9 _let_23) (exists ((V741l_27_2E0 u) (V742e1_2E0 u) (V743e2_2E0 u) (V744e3_2E0 u) (V745e4_2E0 u) (V746e5_2E0 u) (V747e6_2E0 u) (V748e7_2E0 u) (V749e8_2E0 u) (V750e9_2E0 u) (V751e10_2E0 u) (V752e11_2E0 u) (V753e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V741l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V742e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V743e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V744e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V745e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V746e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V747e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V748e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V749e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V750e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V751e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V752e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V753e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (exists ((V715l_27_2E0 u) (V716e1_2E0 u) (V717e2_2E0 u) (V718e3_2E0 u) (V719e4_2E0 u) (V720e5_2E0 u) (V721e6_2E0 u) (V722e7_2E0 u) (V723e8_2E0 u) (V724e9_2E0 u) (V725e10_2E0 u) (V726e11_2E0 u) (V727e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V715l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V716e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V717e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V718e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V719e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V720e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V721e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V722e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V723e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V724e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V725e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V726e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V727e12_2E0)) _let_2)))))))))))))))))))))))))))))) (_let_9 _let_22)) (= (exists ((V689l_27_2E0 u) (V690e1_2E0 u) (V691e2_2E0 u) (V692e3_2E0 u) (V693e4_2E0 u) (V694e5_2E0 u) (V695e6_2E0 u) (V696e7_2E0 u) (V697e8_2E0 u) (V698e9_2E0 u) (V699e10_2E0 u) (V700e11_2E0 u) (V701e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V690e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V691e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V692e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V693e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V694e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V695e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V696e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V697e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V698e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V699e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V700e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V701e12_2E0)) (_let_1 V689l_27_2E0))))))))))))))))))))))))))))) (_let_9 _let_17)) (= (exists ((V650l_27_2E0 u) (V651e1_2E0 u) (V652e2_2E0 u) (V653e3_2E0 u) (V654e4_2E0 u) (V655e5_2E0 u) (V656e6_2E0 u) (V657e7_2E0 u) (V658e8_2E0 u) (V659e9_2E0 u) (V660e10_2E0 u) (V661e11_2E0 u) (V662e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V651e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V652e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V653e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V654e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V655e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V656e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V657e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V658e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V659e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V660e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V661e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V662e12_2E0)) (_let_1 V650l_27_2E0))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_21) _let_7)) (= (= _let_17 _let_7) (exists ((V638e1_2E0 u) (V639e2_2E0 u) (V640e3_2E0 u) (V641e4_2E0 u) (V642e5_2E0 u) (V643e6_2E0 u) (V644e7_2E0 u) (V645e8_2E0 u) (V646e9_2E0 u) (V647e10_2E0 u) (V648e11_2E0 u) (V649e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V638e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V639e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V640e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V641e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V642e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V643e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V644e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V645e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V646e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V647e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V648e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V649e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))) (= (exists ((V584l_27_2E0 u) (V585e1_2E0 u) (V586e2_2E0 u) (V587e3_2E0 u) (V588e4_2E0 u) (V589e5_2E0 u) (V590e6_2E0 u) (V591e7_2E0 u) (V592e8_2E0 u) (V593e9_2E0 u) (V594e10_2E0 u) (V595e11_2E0 u) (V596e12_2E0 u) (V597e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V584l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V585e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V586e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V587e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V588e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V589e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V590e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V591e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V592e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V593e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V594e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V595e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V596e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V597e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_20 _let_7)) (= (exists ((V570l_27_2E0 u) (V571e1_2E0 u) (V572e2_2E0 u) (V573e3_2E0 u) (V574e4_2E0 u) (V575e5_2E0 u) (V576e6_2E0 u) (V577e7_2E0 u) (V578e8_2E0 u) (V579e9_2E0 u) (V580e10_2E0 u) (V581e11_2E0 u) (V582e12_2E0 u) (V583e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V570l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V571e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V572e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V573e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V574e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V575e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V576e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V577e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V578e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V579e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V580e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V581e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V582e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V583e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_7 _let_20)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_7) (exists ((V514l_27_2E0 u) (V515e1_2E0 u) (V516e2_2E0 u) (V517e3_2E0 u) (V518e4_2E0 u) (V519e5_2E0 u) (V520e6_2E0 u) (V521e7_2E0 u) (V522e8_2E0 u) (V523e9_2E0 u) (V524e10_2E0 u) (V525e11_2E0 u) (V526e12_2E0 u) (V527e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V514l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V515e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V516e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V517e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V518e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V519e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V520e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V521e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V522e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V523e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V524e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V525e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V526e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V527e13_2E0)) _let_2))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V500l_27_2E0 u) (V501e1_2E0 u) (V502e2_2E0 u) (V503e3_2E0 u) (V504e4_2E0 u) (V505e5_2E0 u) (V506e6_2E0 u) (V507e7_2E0 u) (V508e8_2E0 u) (V509e9_2E0 u) (V510e10_2E0 u) (V511e11_2E0 u) (V512e12_2E0 u) (V513e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V501e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V502e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V503e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V504e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V505e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V506e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V507e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V508e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V509e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V510e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V511e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V512e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V513e13_2E0)) (_let_1 V500l_27_2E0))))))))))))))))))))))))))))))) (_let_9 _let_19)) (= (exists ((V486l_27_2E0 u) (V487e1_2E0 u) (V488e2_2E0 u) (V489e3_2E0 u) (V490e4_2E0 u) (V491e5_2E0 u) (V492e6_2E0 u) (V493e7_2E0 u) (V494e8_2E0 u) (V495e9_2E0 u) (V496e10_2E0 u) (V497e11_2E0 u) (V498e12_2E0 u) (V499e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V487e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V488e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V489e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V490e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V491e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V492e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V493e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V494e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V495e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V496e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V497e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V498e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V499e13_2E0)) (_let_1 V486l_27_2E0))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_19) _let_7)) (= (exists ((V472l_27_2E0 u) (V473e1_2E0 u) (V474e2_2E0 u) (V475e3_2E0 u) (V476e4_2E0 u) (V477e5_2E0 u) (V478e6_2E0 u) (V479e7_2E0 u) (V480e8_2E0 u) (V481e9_2E0 u) (V482e10_2E0 u) (V483e11_2E0 u) (V484e12_2E0 u) (V485e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V473e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V474e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V475e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V476e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V477e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V478e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V479e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V480e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V481e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V482e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V483e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V484e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V485e13_2E0)) (_let_1 V472l_27_2E0))))))))))))))))))))))))))))))) (_let_18 _let_17)) (= (exists ((V402l_27_2E0 u) (V403e1_2E0 u) (V404e2_2E0 u) (V405e3_2E0 u) (V406e4_2E0 u) (V407e5_2E0 u) (V408e6_2E0 u) (V409e7_2E0 u) (V410e8_2E0 u) (V411e9_2E0 u) (V412e10_2E0 u) (V413e11_2E0 u) (V414e12_2E0 u) (V415e13_2E0 u) (V416e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V402l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V403e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V404e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V405e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V406e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V407e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V408e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V409e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V410e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V411e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V412e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V413e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V414e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V415e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V416e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) (= _let_7 _let_14)) (= (= _let_7 _let_15) (exists ((V372l_27_2E0 u) (V373e1_2E0 u) (V374e2_2E0 u) (V375e3_2E0 u) (V376e4_2E0 u) (V377e5_2E0 u) (V378e6_2E0 u) (V379e7_2E0 u) (V380e8_2E0 u) (V381e9_2E0 u) (V382e10_2E0 u) (V383e11_2E0 u) (V384e12_2E0 u) (V385e13_2E0 u) (V386e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V372l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V373e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V374e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V375e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V376e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V377e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V378e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V379e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V380e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V381e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V382e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V383e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V384e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V385e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V386e14_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (exists ((V357l_27_2E0 u) (V358e1_2E0 u) (V359e2_2E0 u) (V360e3_2E0 u) (V361e4_2E0 u) (V362e5_2E0 u) (V363e6_2E0 u) (V364e7_2E0 u) (V365e8_2E0 u) (V366e9_2E0 u) (V367e10_2E0 u) (V368e11_2E0 u) (V369e12_2E0 u) (V370e13_2E0 u) (V371e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V357l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V358e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V359e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V360e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V361e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V362e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V363e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V364e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V365e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V366e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V367e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V368e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V369e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V370e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V371e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_14)) (= (_let_9 _let_12) (exists ((V297l_27_2E0 u) (V298e1_2E0 u) (V299e2_2E0 u) (V300e3_2E0 u) (V301e4_2E0 u) (V302e5_2E0 u) (V303e6_2E0 u) (V304e7_2E0 u) (V305e8_2E0 u) (V306e9_2E0 u) (V307e10_2E0 u) (V308e11_2E0 u) (V309e12_2E0 u) (V310e13_2E0 u) (V311e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V298e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V299e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V300e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V301e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V302e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V303e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V304e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V305e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V306e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V307e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V308e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V309e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V310e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V311e14_2E0)) (_let_1 V297l_27_2E0)))))))))))))))))))))))))))))))))) (= (exists ((V282l_27_2E0 u) (V283e1_2E0 u) (V284e2_2E0 u) (V285e3_2E0 u) (V286e4_2E0 u) (V287e5_2E0 u) (V288e6_2E0 u) (V289e7_2E0 u) (V290e8_2E0 u) (V291e9_2E0 u) (V292e10_2E0 u) (V293e11_2E0 u) (V294e12_2E0 u) (V295e13_2E0 u) (V296e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V283e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V284e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V285e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V286e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V287e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V288e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V289e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V290e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V291e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V292e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V293e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V294e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V295e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V296e14_2E0)) (_let_1 V282l_27_2E0))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_7)) (= (exists ((V238e1_2E0 u) (V239e2_2E0 u) (V240e3_2E0 u) (V241e4_2E0 u) (V242e5_2E0 u) (V243e6_2E0 u) (V244e7_2E0 u) (V245e8_2E0 u) (V246e9_2E0 u) (V247e10_2E0 u) (V248e11_2E0 u) (V249e12_2E0 u) (V250e13_2E0 u) (V251e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V238e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V239e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V240e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V241e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V242e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V243e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V244e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V245e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V246e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V247e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V248e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V249e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V250e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V251e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))) (= _let_12 _let_7)) (= (exists ((V224e1_2E0 u) (V225e2_2E0 u) (V226e3_2E0 u) (V227e4_2E0 u) (V228e5_2E0 u) (V229e6_2E0 u) (V230e7_2E0 u) (V231e8_2E0 u) (V232e9_2E0 u) (V233e10_2E0 u) (V234e11_2E0 u) (V235e12_2E0 u) (V236e13_2E0 u) (V237e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V224e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V225e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V226e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V227e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V228e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V229e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V230e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V231e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V232e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V233e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V234e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V235e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V236e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V237e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))) (= _let_7 _let_12)) (= (exists ((V176l_27_2E0 u) (V177e1_2E0 u) (V178e2_2E0 u) (V179e3_2E0 u) (V180e4_2E0 u) (V181e5_2E0 u) (V182e6_2E0 u) (V183e7_2E0 u) (V184e8_2E0 u) (V185e9_2E0 u) (V186e10_2E0 u) (V187e11_2E0 u) (V188e12_2E0 u) (V189e13_2E0 u) (V190e14_2E0 u) (V191e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V176l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V177e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V178e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V179e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V180e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V181e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V182e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V183e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V184e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V185e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V186e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V187e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V188e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V189e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V190e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V191e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) (= _let_8 _let_7)) (= (_let_9 _let_8) (exists ((V112l_27_2E0 u) (V113e1_2E0 u) (V114e2_2E0 u) (V115e3_2E0 u) (V116e4_2E0 u) (V117e5_2E0 u) (V118e6_2E0 u) (V119e7_2E0 u) (V120e8_2E0 u) (V121e9_2E0 u) (V122e10_2E0 u) (V123e11_2E0 u) (V124e12_2E0 u) (V125e13_2E0 u) (V126e14_2E0 u) (V127e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V112l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V113e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V114e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V115e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V116e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V117e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V118e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V119e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V120e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V121e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V122e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V123e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V124e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V125e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V126e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V127e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V17e1_2E0 u) (V18e2_2E0 u) (V19e3_2E0 u) (V20e4_2E0 u) (V21e5_2E0 u) (V22e6_2E0 u) (V23e7_2E0 u) (V24e8_2E0 u) (V25e9_2E0 u) (V26e10_2E0 u) (V27e11_2E0 u) (V28e12_2E0 u) (V29e13_2E0 u) (V30e14_2E0 u) (V31e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V24e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V30e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))) (= _let_4 _let_7)) (= (= _let_7 _let_4) (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u) (V7e6_2E0 u) (V8e7_2E0 u) (V9e8_2E0 u) (V10e9_2E0 u) (V11e10_2E0 u) (V12e11_2E0 u) (V13e12_2E0 u) (V14e13_2E0 u) (V15e14_2E0 u) (V16e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EquantHeuristics_2EIS__REMOVABLE__QUANT__FUN_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (= (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V2x_2E0))))))) (exists ((V3x_27_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V3x_27_2E0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EISL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EISL_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= (or V2P1 V3P2) ((F0 V2P1) V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (= (=> (forall ((V5y_2E0 u)) (=> (not (forall ((V6x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V2P_2E0)) ((s A_27a) V6x_2E0)))) ((s A_27b) V5y_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0R_2E0)) ((s A_27b) V5y_2E0)))))) (exists ((V7x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V7x_2E0)))))) (exists ((V3x_2E0 u)) (=> (forall ((V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V2P_2E0)) ((s A_27a) V3x_2E0)))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0R_2E0)) _let_1))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))))) (forall ((A_27a d)) (and (forall ((V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 (c_2Elist_2ETL_2E1 _let_4)))))))) _let_2)))))))) (forall ((V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 (c_2Elist_2ETL_2E1 _let_7)))))))))))))) _let_2))))))))))) (forall ((V6l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 (c_2Elist_2ETL_2E1 _let_8)))))))))))))))) _let_2)))))))))))) (forall ((V7l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V7l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 (c_2Elist_2ETL_2E1 _let_9)))))))))))))))))) _let_2))))))))))))) (forall ((V8l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (_let_1 (c_2Elist_2ETL_2E1 _let_9)))) (let ((_let_11 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_10))) (_let_1 (c_2Elist_2ETL_2E1 _let_10)))))))))))))))))))) _let_2)))))))))))))) (forall ((V9l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V9l_2E0))) (= (= (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2EHD_2E1 _let_2))) (_let_1 c_2Elist_2ENIL_2E0))) _let_2) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V12l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V12l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_4))))) (_let_1 c_2Elist_2ENIL_2E0))))))))) _let_2)))))))) (forall ((V14l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V14l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_6))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) _let_2)))))))))) (forall ((V16l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V16l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_8))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) _let_2)))))))))))) (forall ((V18l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V18l_2E0))) (= (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2EHD_2E1 _let_2))) (_let_1 (c_2Elist_2ETL_2E1 _let_2))))))))) (forall ((V19l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V19l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 (c_2Elist_2ETL_2E1 _let_3))))))))))))) (forall ((V21l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V21l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 (c_2Elist_2ETL_2E1 _let_5))))))))))) ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))) (forall ((V23l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V23l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 (c_2Elist_2ETL_2E1 _let_7))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))))))))) (forall ((V26l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V26l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (_let_1 (c_2Elist_2ETL_2E1 _let_9)))) (let ((_let_11 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_11 (c_2Elist_2EHD_2E1 _let_10))) (_let_1 (c_2Elist_2ETL_2E1 _let_10))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (forall ((V31l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V31l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_5))))) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (forall ((V32l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V32l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_6))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (forall ((V35l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V35l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_9))))) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))) (forall ((V34l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V34l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_8))))) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))) (forall ((V33l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V33l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_7))))) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))) (forall ((V30l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V30l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_4))))) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (forall ((V29l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V29l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_3))))) (_let_1 c_2Elist_2ENIL_2E0)))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (forall ((V28l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V28l_2E0))) (let ((_let_3 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_2))))) (_let_1 c_2Elist_2ENIL_2E0)))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V27l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V27l_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2EHD_2E1 _let_2))) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((V25l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V25l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 (c_2Elist_2ETL_2E1 _let_9))))))))))))))))))))))))))))))) (forall ((V24l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V24l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_9 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 (c_2Elist_2ETL_2E1 _let_8)))))))))))))))))))))))))))) (forall ((V22l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V22l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (s A_27a))) (= (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 (c_2Elist_2ETL_2E1 _let_6))))))))))))) ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))) (forall ((V20l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V20l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (= _let_2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 (c_2Elist_2ETL_2E1 _let_4)))))))))))))))) (forall ((V17l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V17l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (_let_1 (c_2Elist_2ETL_2E1 _let_7)))) (let ((_let_9 (_let_1 (c_2Elist_2ETL_2E1 _let_8)))) (let ((_let_10 (s A_27a))) (= (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_8))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 _let_9))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_10 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_9))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) _let_2) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))))) (forall ((V15l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V15l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (_let_1 (c_2Elist_2ETL_2E1 _let_6)))) (let ((_let_8 (s A_27a))) (= (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_8 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_7))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) _let_2) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))) (forall ((V13l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V13l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_5))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))) _let_2))))))))) (forall ((V11l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V11l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_3))))) (_let_1 c_2Elist_2ENIL_2E0))))))) _let_2))))))) (forall ((V10l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V10l_2E0))) (let ((_let_3 (s A_27a))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_2))))) (_let_1 c_2Elist_2ENIL_2E0))))) _let_2)))))) (forall ((V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (_let_1 (c_2Elist_2ETL_2E1 _let_5)))) (let ((_let_7 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_7 (c_2Elist_2EHD_2E1 _let_6))) (_let_1 (c_2Elist_2ETL_2E1 _let_6)))))))))))) _let_2)))))))))) (forall ((V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (_let_1 (c_2Elist_2ETL_2E1 _let_3)))) (let ((_let_5 (_let_1 (c_2Elist_2ETL_2E1 _let_4)))) (let ((_let_6 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_6 (c_2Elist_2EHD_2E1 _let_5))) (_let_1 (c_2Elist_2ETL_2E1 _let_5)))))))))) _let_2))))))))) (forall ((V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (s A_27a))) (= ((mono_2Ec_2Earithmetic_2E_3E (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 (c_2Elist_2EHD_2E1 _let_3))) (_let_1 (c_2Elist_2ETL_2E1 _let_3)))))) _let_2))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2EHD_2E1 _let_2))) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) _let_2) (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F9_2E0 u) (F8_2E0 u) (F11_2E0 u) (F10_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F0_2E0 u) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F1_2E0 u)) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V11y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V10x_2E0)))) ((s A_27a) V11y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F9_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V10x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F8_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V5x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V20x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F11_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V20x_2E0)))) (exists ((V21y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V20x_2E0)))) ((s A_27a) V21y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V15x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F10_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V15x_2E0)))) (exists ((V16y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V15x_2E0)))) ((s A_27a) V16y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V17y_2E0 u) (V18x_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 ((s A_27c) V18x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F6_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V12y_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 ((s A_27c) V13x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F4_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V7y_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V8x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V2y_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((s A_27c) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0iy_2E0 u) (V19fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V19fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F7_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V14fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V14fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F5_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V9fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V9fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F3_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (=> (forall ((V0iy_2E0 u) (V4fv_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V4fv_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) V0iy_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F1_2E0)) _let_5))) _let_2)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (forall ((V0iy_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_3) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_9 ((s _let_8) V0iy_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_11 (s ((tyop_2Emin_2Efun _let_8) _let_10)))) (let ((_let_12 (s _let_10))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (and (=> (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F2_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_12 ((app_2E2 (_let_11 F3_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F9_2E0)) _let_4)))))) (=> (forall ((V12y_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F4_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 (_let_12 ((app_2E2 (_let_11 F5_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F10_2E0)) _let_4)))))) (=> (forall ((V17y_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F6_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 (_let_12 ((app_2E2 (_let_11 F7_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F11_2E0)) _let_4)))))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) V0iy_2E0)) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 (_let_12 ((app_2E2 (_let_11 F1_2E0)) _let_9))) (_let_7 ((app_2E2 (_let_6 F8_2E0)) _let_4)))))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s A_27a) V0y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))))) (let ((_let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1)))))))) (and (=> (not _let_4) _let_5) (=> (not _let_5) _let_4))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT1 _let_5))) (let ((_let_7 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_6)))) (let ((_let_8 (mono_2Ec_2Earithmetic_2E_3E _let_3))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_6)))) (let ((_let_10 (mono_2Ec_2Earithmetic_2E_3E_3D _let_3))) (let ((_let_11 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_12 (_let_11 _let_9))) (let ((_let_13 ((mono_2Ec_2Earithmetic_2E_2B _let_9) V0x))) (let ((_let_14 (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (let ((_let_15 (mono_2Ec_2Earithmetic_2EBIT2 _let_14))) (let ((_let_16 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_15)))) (let ((_let_17 (_let_11 _let_7))) (let ((_let_18 ((mono_2Ec_2Earithmetic_2E_2B _let_7) V0x))) (let ((_let_19 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_15)))) (let ((_let_20 ((mono_2Ec_2Earithmetic_2E_2B _let_16) V0x))) (let ((_let_21 (_let_11 _let_16))) (let ((_let_22 ((mono_2Ec_2Earithmetic_2E_2B _let_19) V0x))) (let ((_let_23 (_let_11 _let_19))) (let ((_let_24 (mono_2Ec_2Earithmetic_2EBIT1 _let_14))) (let ((_let_25 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_24)))) (let ((_let_26 ((mono_2Ec_2Earithmetic_2E_2B _let_25) V0x))) (let ((_let_27 (_let_11 _let_25))) (let ((_let_28 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_24)))) (let ((_let_29 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_30 (mono_2Ec_2Earithmetic_2EBIT2 _let_29))) (let ((_let_31 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_30)))) (let ((_let_32 ((mono_2Ec_2Earithmetic_2E_2B _let_28) V0x))) (let ((_let_33 (_let_11 _let_28))) (let ((_let_34 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_30)))) (let ((_let_35 ((mono_2Ec_2Earithmetic_2E_2B _let_31) V0x))) (let ((_let_36 (_let_11 _let_31))) (let ((_let_37 (mono_2Ec_2Earithmetic_2EBIT1 _let_29))) (let ((_let_38 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_37)))) (let ((_let_39 ((mono_2Ec_2Earithmetic_2E_2B _let_34) V0x))) (let ((_let_40 (_let_11 _let_34))) (let ((_let_41 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_37)))) (let ((_let_42 ((mono_2Ec_2Earithmetic_2E_2B _let_38) V0x))) (let ((_let_43 (_let_11 _let_38))) (let ((_let_44 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_5)))) (let ((_let_45 (_let_11 _let_41))) (let ((_let_46 ((mono_2Ec_2Earithmetic_2E_2B _let_41) V0x))) (let ((_let_47 (mono_2Ec_2Earithmetic_2ENUMERAL _let_6))) (let ((_let_48 ((mono_2Ec_2Earithmetic_2E_2B _let_44) V0x))) (let ((_let_49 (_let_11 _let_44))) (let ((_let_50 (mono_2Ec_2Earithmetic_2ENUMERAL _let_15))) (let ((_let_51 ((mono_2Ec_2Earithmetic_2E_2B _let_47) V0x))) (let ((_let_52 (_let_11 _let_47))) (let ((_let_53 ((mono_2Ec_2Earithmetic_2E_2B _let_50) V0x))) (let ((_let_54 (mono_2Ec_2Earithmetic_2ENUMERAL _let_24))) (let ((_let_55 ((mono_2Ec_2Earithmetic_2E_2B _let_54) V0x))) (let ((_let_56 (_let_11 _let_54))) (let ((_let_57 (mono_2Ec_2Earithmetic_2ENUMERAL _let_37))) (let ((_let_58 (mono_2Ec_2Earithmetic_2ENUMERAL _let_30))) (let ((_let_59 ((mono_2Ec_2Earithmetic_2E_2B _let_58) V0x))) (let ((_let_60 (_let_11 _let_58))) (let ((_let_61 (_let_11 _let_57))) (let ((_let_62 (mono_2Ec_2Earithmetic_2ENUMERAL _let_5))) (let ((_let_63 (mono_2Ec_2Earithmetic_2ENUMERAL _let_14))) (let ((_let_64 (_let_11 _let_62))) (let ((_let_65 ((mono_2Ec_2Earithmetic_2E_2B _let_62) V0x))) (let ((_let_66 ((mono_2Ec_2Earithmetic_2E_2B _let_63) V0x))) (let ((_let_67 (_let_11 _let_63))) (let ((_let_68 (mono_2Ec_2Earithmetic_2ENUMERAL _let_29))) (let ((_let_69 (_let_11 _let_68))) (let ((_let_70 ((mono_2Ec_2Earithmetic_2E_2B _let_68) V0x))) (let ((_let_71 (mono_2Ec_2Earithmetic_2ENUMERAL _let_4))) (let ((_let_72 ((mono_2Ec_2Earithmetic_2E_2B _let_71) V0x))) (let ((_let_73 (_let_11 _let_71))) (let ((_let_74 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_75 ((mono_2Ec_2Earithmetic_2E_2B _let_57) V0x))) (let ((_let_76 (_let_11 _let_50))) (and (= (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u) (V7e6_2E0 u) (V8e7_2E0 u) (V9e8_2E0 u) (V10e9_2E0 u) (V11e10_2E0 u) (V12e11_2E0 u) (V13e12_2E0 u) (V14e13_2E0 u) (V15e14_2E0 u) (V16e15_2E0 u) (V17e16_2E0 u) (V18e17_2E0 u) (V19e18_2E0 u) (V20e19_2E0 u) (V21e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e20_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_9)) (= (exists ((V22e1_2E0 u) (V23e2_2E0 u) (V24e3_2E0 u) (V25e4_2E0 u) (V26e5_2E0 u) (V27e6_2E0 u) (V28e7_2E0 u) (V29e8_2E0 u) (V30e9_2E0 u) (V31e10_2E0 u) (V32e11_2E0 u) (V33e12_2E0 u) (V34e13_2E0 u) (V35e14_2E0 u) (V36e15_2E0 u) (V37e16_2E0 u) (V38e17_2E0 u) (V39e18_2E0 u) (V40e19_2E0 u) (V41e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V24e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V30e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V32e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V33e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V36e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V37e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V38e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V39e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V40e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V41e20_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))) (= _let_9 _let_3)) (= (exists ((V126l_27_2E0 u) (V127e1_2E0 u) (V128e2_2E0 u) (V129e3_2E0 u) (V130e4_2E0 u) (V131e5_2E0 u) (V132e6_2E0 u) (V133e7_2E0 u) (V134e8_2E0 u) (V135e9_2E0 u) (V136e10_2E0 u) (V137e11_2E0 u) (V138e12_2E0 u) (V139e13_2E0 u) (V140e14_2E0 u) (V141e15_2E0 u) (V142e16_2E0 u) (V143e17_2E0 u) (V144e18_2E0 u) (V145e19_2E0 u) (V146e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V126l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V127e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V128e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V129e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V130e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V131e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V132e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V133e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V134e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V135e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V136e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V137e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V138e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V139e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V140e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V141e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V142e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V143e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V144e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V145e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V146e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_3)) (= (exists ((V147l_27_2E0 u) (V148e1_2E0 u) (V149e2_2E0 u) (V150e3_2E0 u) (V151e4_2E0 u) (V152e5_2E0 u) (V153e6_2E0 u) (V154e7_2E0 u) (V155e8_2E0 u) (V156e9_2E0 u) (V157e10_2E0 u) (V158e11_2E0 u) (V159e12_2E0 u) (V160e13_2E0 u) (V161e14_2E0 u) (V162e15_2E0 u) (V163e16_2E0 u) (V164e17_2E0 u) (V165e18_2E0 u) (V166e19_2E0 u) (V167e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V147l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V148e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V149e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V150e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V151e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V152e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V153e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V154e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V155e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V156e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V157e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V158e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V159e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V160e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V161e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V162e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V163e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V164e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V165e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V166e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V167e20_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))) (_let_10 _let_13)) (= (_let_10 _let_12) (exists ((V189l_27_2E0 u) (V190e1_2E0 u) (V191e2_2E0 u) (V192e3_2E0 u) (V193e4_2E0 u) (V194e5_2E0 u) (V195e6_2E0 u) (V196e7_2E0 u) (V197e8_2E0 u) (V198e9_2E0 u) (V199e10_2E0 u) (V200e11_2E0 u) (V201e12_2E0 u) (V202e13_2E0 u) (V203e14_2E0 u) (V204e15_2E0 u) (V205e16_2E0 u) (V206e17_2E0 u) (V207e18_2E0 u) (V208e19_2E0 u) (V209e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V189l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V190e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V191e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V192e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V193e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V194e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V195e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V196e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V197e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V198e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V199e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V200e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V201e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V202e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V203e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V204e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V205e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V206e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V207e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V208e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V209e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V231l_27_2E0 u) (V232e1_2E0 u) (V233e2_2E0 u) (V234e3_2E0 u) (V235e4_2E0 u) (V236e5_2E0 u) (V237e6_2E0 u) (V238e7_2E0 u) (V239e8_2E0 u) (V240e9_2E0 u) (V241e10_2E0 u) (V242e11_2E0 u) (V243e12_2E0 u) (V244e13_2E0 u) (V245e14_2E0 u) (V246e15_2E0 u) (V247e16_2E0 u) (V248e17_2E0 u) (V249e18_2E0 u) (V250e19_2E0 u) (V251e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V231l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V232e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V233e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V234e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V235e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V236e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V237e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V238e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V239e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V240e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V241e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V242e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V243e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V244e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V245e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V246e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V247e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V248e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V249e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V250e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V251e20_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))) (= _let_13 _let_3)) (= (exists ((V252l_27_2E0 u) (V253e1_2E0 u) (V254e2_2E0 u) (V255e3_2E0 u) (V256e4_2E0 u) (V257e5_2E0 u) (V258e6_2E0 u) (V259e7_2E0 u) (V260e8_2E0 u) (V261e9_2E0 u) (V262e10_2E0 u) (V263e11_2E0 u) (V264e12_2E0 u) (V265e13_2E0 u) (V266e14_2E0 u) (V267e15_2E0 u) (V268e16_2E0 u) (V269e17_2E0 u) (V270e18_2E0 u) (V271e19_2E0 u) (V272e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V252l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V253e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V254e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V255e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V256e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V257e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V258e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V259e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V260e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V261e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V262e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V263e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V264e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V265e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V266e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V267e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V268e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V269e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V270e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V271e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V272e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_12)) (= (exists ((V313e1_2E0 u) (V314e2_2E0 u) (V315e3_2E0 u) (V316e4_2E0 u) (V317e5_2E0 u) (V318e6_2E0 u) (V319e7_2E0 u) (V320e8_2E0 u) (V321e9_2E0 u) (V322e10_2E0 u) (V323e11_2E0 u) (V324e12_2E0 u) (V325e13_2E0 u) (V326e14_2E0 u) (V327e15_2E0 u) (V328e16_2E0 u) (V329e17_2E0 u) (V330e18_2E0 u) (V331e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V313e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V314e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V315e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V316e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V317e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V318e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V319e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V320e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V321e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V322e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V323e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V324e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V325e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V326e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V327e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V328e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V329e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V330e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V331e19_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))) (= _let_7 _let_3)) (= (exists ((V332l_27_2E0 u) (V333e1_2E0 u) (V334e2_2E0 u) (V335e3_2E0 u) (V336e4_2E0 u) (V337e5_2E0 u) (V338e6_2E0 u) (V339e7_2E0 u) (V340e8_2E0 u) (V341e9_2E0 u) (V342e10_2E0 u) (V343e11_2E0 u) (V344e12_2E0 u) (V345e13_2E0 u) (V346e14_2E0 u) (V347e15_2E0 u) (V348e16_2E0 u) (V349e17_2E0 u) (V350e18_2E0 u) (V351e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V333e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V334e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V335e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V336e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V337e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V338e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V339e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V340e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V341e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V342e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V343e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V344e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V345e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V346e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V347e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V348e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V349e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V350e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V351e19_2E0)) (_let_1 V332l_27_2E0))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_16) _let_3)) (= (exists ((V412l_27_2E0 u) (V413e1_2E0 u) (V414e2_2E0 u) (V415e3_2E0 u) (V416e4_2E0 u) (V417e5_2E0 u) (V418e6_2E0 u) (V419e7_2E0 u) (V420e8_2E0 u) (V421e9_2E0 u) (V422e10_2E0 u) (V423e11_2E0 u) (V424e12_2E0 u) (V425e13_2E0 u) (V426e14_2E0 u) (V427e15_2E0 u) (V428e16_2E0 u) (V429e17_2E0 u) (V430e18_2E0 u) (V431e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V412l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V413e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V414e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V415e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V416e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V417e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V418e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V419e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V420e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V421e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V422e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V423e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V424e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V425e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V426e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V427e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V428e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V429e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V430e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V431e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_18) _let_3)) (= (_let_10 _let_18) (exists ((V432l_27_2E0 u) (V433e1_2E0 u) (V434e2_2E0 u) (V435e3_2E0 u) (V436e4_2E0 u) (V437e5_2E0 u) (V438e6_2E0 u) (V439e7_2E0 u) (V440e8_2E0 u) (V441e9_2E0 u) (V442e10_2E0 u) (V443e11_2E0 u) (V444e12_2E0 u) (V445e13_2E0 u) (V446e14_2E0 u) (V447e15_2E0 u) (V448e16_2E0 u) (V449e17_2E0 u) (V450e18_2E0 u) (V451e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V432l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V433e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V434e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V435e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V436e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V437e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V438e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V439e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V440e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V441e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V442e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V443e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V444e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V445e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V446e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V447e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V448e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V449e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V450e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V451e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V472l_27_2E0 u) (V473e1_2E0 u) (V474e2_2E0 u) (V475e3_2E0 u) (V476e4_2E0 u) (V477e5_2E0 u) (V478e6_2E0 u) (V479e7_2E0 u) (V480e8_2E0 u) (V481e9_2E0 u) (V482e10_2E0 u) (V483e11_2E0 u) (V484e12_2E0 u) (V485e13_2E0 u) (V486e14_2E0 u) (V487e15_2E0 u) (V488e16_2E0 u) (V489e17_2E0 u) (V490e18_2E0 u) (V491e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V472l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V473e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V474e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V475e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V476e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V477e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V478e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V479e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V480e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V481e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V482e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V483e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V484e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V485e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V486e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V487e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V488e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V489e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V490e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V491e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_17)) (= (exists ((V552l_27_2E0 u) (V553e1_2E0 u) (V554e2_2E0 u) (V555e3_2E0 u) (V556e4_2E0 u) (V557e5_2E0 u) (V558e6_2E0 u) (V559e7_2E0 u) (V560e8_2E0 u) (V561e9_2E0 u) (V562e10_2E0 u) (V563e11_2E0 u) (V564e12_2E0 u) (V565e13_2E0 u) (V566e14_2E0 u) (V567e15_2E0 u) (V568e16_2E0 u) (V569e17_2E0 u) (V570e18_2E0 u) (V571e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V552l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V553e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V554e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V555e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V556e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V557e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V558e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V559e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V560e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V561e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V562e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V563e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V564e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V565e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V566e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V567e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V568e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V569e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V570e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V571e19_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))) (= _let_17 _let_3)) (= (exists ((V590e1_2E0 u) (V591e2_2E0 u) (V592e3_2E0 u) (V593e4_2E0 u) (V594e5_2E0 u) (V595e6_2E0 u) (V596e7_2E0 u) (V597e8_2E0 u) (V598e9_2E0 u) (V599e10_2E0 u) (V600e11_2E0 u) (V601e12_2E0 u) (V602e13_2E0 u) (V603e14_2E0 u) (V604e15_2E0 u) (V605e16_2E0 u) (V606e17_2E0 u) (V607e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V590e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V591e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V592e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V593e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V594e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V595e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V596e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V597e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V598e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V599e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V600e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V601e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V602e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V603e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V604e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V605e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V606e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V607e18_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))) (= _let_16 _let_3)) (= (exists ((V608l_27_2E0 u) (V609e1_2E0 u) (V610e2_2E0 u) (V611e3_2E0 u) (V612e4_2E0 u) (V613e5_2E0 u) (V614e6_2E0 u) (V615e7_2E0 u) (V616e8_2E0 u) (V617e9_2E0 u) (V618e10_2E0 u) (V619e11_2E0 u) (V620e12_2E0 u) (V621e13_2E0 u) (V622e14_2E0 u) (V623e15_2E0 u) (V624e16_2E0 u) (V625e17_2E0 u) (V626e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V609e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V610e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V611e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V612e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V613e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V614e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V615e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V616e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V617e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V618e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V619e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V620e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V621e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V622e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V623e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V624e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V625e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V626e18_2E0)) (_let_1 V608l_27_2E0))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_19) _let_3)) (= (_let_10 _let_16) (exists ((V665l_27_2E0 u) (V666e1_2E0 u) (V667e2_2E0 u) (V668e3_2E0 u) (V669e4_2E0 u) (V670e5_2E0 u) (V671e6_2E0 u) (V672e7_2E0 u) (V673e8_2E0 u) (V674e9_2E0 u) (V675e10_2E0 u) (V676e11_2E0 u) (V677e12_2E0 u) (V678e13_2E0 u) (V679e14_2E0 u) (V680e15_2E0 u) (V681e16_2E0 u) (V682e17_2E0 u) (V683e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V666e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V667e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V668e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V669e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V670e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V671e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V672e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V673e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V674e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V675e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V676e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V677e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V678e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V679e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V680e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V681e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V682e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V683e18_2E0)) (_let_1 V665l_27_2E0)))))))))))))))))))))))))))))))))))))))))) (= (exists ((V722l_27_2E0 u) (V723e1_2E0 u) (V724e2_2E0 u) (V725e3_2E0 u) (V726e4_2E0 u) (V727e5_2E0 u) (V728e6_2E0 u) (V729e7_2E0 u) (V730e8_2E0 u) (V731e9_2E0 u) (V732e10_2E0 u) (V733e11_2E0 u) (V734e12_2E0 u) (V735e13_2E0 u) (V736e14_2E0 u) (V737e15_2E0 u) (V738e16_2E0 u) (V739e17_2E0 u) (V740e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V722l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V723e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V724e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V725e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V726e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V727e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V728e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V729e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V730e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V731e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V732e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V733e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V734e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V735e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V736e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V737e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V738e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V739e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V740e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_21) _let_3)) (= (exists ((V798l_27_2E0 u) (V799e1_2E0 u) (V800e2_2E0 u) (V801e3_2E0 u) (V802e4_2E0 u) (V803e5_2E0 u) (V804e6_2E0 u) (V805e7_2E0 u) (V806e8_2E0 u) (V807e9_2E0 u) (V808e10_2E0 u) (V809e11_2E0 u) (V810e12_2E0 u) (V811e13_2E0 u) (V812e14_2E0 u) (V813e15_2E0 u) (V814e16_2E0 u) (V815e17_2E0 u) (V816e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V798l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V799e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V800e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V801e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V802e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V803e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V804e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V805e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V806e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V807e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V808e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V809e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V810e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V811e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V812e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V813e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V814e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V815e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V816e18_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_21)) (= (= _let_21 _let_3) (exists ((V817l_27_2E0 u) (V818e1_2E0 u) (V819e2_2E0 u) (V820e3_2E0 u) (V821e4_2E0 u) (V822e5_2E0 u) (V823e6_2E0 u) (V824e7_2E0 u) (V825e8_2E0 u) (V826e9_2E0 u) (V827e10_2E0 u) (V828e11_2E0 u) (V829e12_2E0 u) (V830e13_2E0 u) (V831e14_2E0 u) (V832e15_2E0 u) (V833e16_2E0 u) (V834e17_2E0 u) (V835e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V817l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V818e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V819e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V820e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V821e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V822e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V823e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V824e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V825e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V826e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V827e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V828e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V829e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V830e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V831e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V832e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V833e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V834e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V835e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V836e1_2E0 u) (V837e2_2E0 u) (V838e3_2E0 u) (V839e4_2E0 u) (V840e5_2E0 u) (V841e6_2E0 u) (V842e7_2E0 u) (V843e8_2E0 u) (V844e9_2E0 u) (V845e10_2E0 u) (V846e11_2E0 u) (V847e12_2E0 u) (V848e13_2E0 u) (V849e14_2E0 u) (V850e15_2E0 u) (V851e16_2E0 u) (V852e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V836e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V837e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V838e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V839e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V840e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V841e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V842e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V843e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V844e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V845e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V846e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V847e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V848e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V849e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V850e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V851e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V852e17_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_19)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_25) _let_3) (exists ((V870l_27_2E0 u) (V871e1_2E0 u) (V872e2_2E0 u) (V873e3_2E0 u) (V874e4_2E0 u) (V875e5_2E0 u) (V876e6_2E0 u) (V877e7_2E0 u) (V878e8_2E0 u) (V879e9_2E0 u) (V880e10_2E0 u) (V881e11_2E0 u) (V882e12_2E0 u) (V883e13_2E0 u) (V884e14_2E0 u) (V885e15_2E0 u) (V886e16_2E0 u) (V887e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V871e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V872e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V873e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V874e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V875e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V876e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V877e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V878e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V879e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V880e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V881e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V882e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V883e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V884e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V885e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V886e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V887e17_2E0)) (_let_1 V870l_27_2E0)))))))))))))))))))))))))))))))))))))))) (= (_let_8 _let_25) (exists ((V888l_27_2E0 u) (V889e1_2E0 u) (V890e2_2E0 u) (V891e3_2E0 u) (V892e4_2E0 u) (V893e5_2E0 u) (V894e6_2E0 u) (V895e7_2E0 u) (V896e8_2E0 u) (V897e9_2E0 u) (V898e10_2E0 u) (V899e11_2E0 u) (V900e12_2E0 u) (V901e13_2E0 u) (V902e14_2E0 u) (V903e15_2E0 u) (V904e16_2E0 u) (V905e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V889e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V890e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V891e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V892e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V893e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V894e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V895e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V896e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V897e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V898e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V899e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V900e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V901e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V902e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V903e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V904e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V905e17_2E0)) (_let_1 V888l_27_2E0)))))))))))))))))))))))))))))))))))))))) (= (exists ((V960l_27_2E0 u) (V961e1_2E0 u) (V962e2_2E0 u) (V963e3_2E0 u) (V964e4_2E0 u) (V965e5_2E0 u) (V966e6_2E0 u) (V967e7_2E0 u) (V968e8_2E0 u) (V969e9_2E0 u) (V970e10_2E0 u) (V971e11_2E0 u) (V972e12_2E0 u) (V973e13_2E0 u) (V974e14_2E0 u) (V975e15_2E0 u) (V976e16_2E0 u) (V977e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V960l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V961e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V962e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V963e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V964e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V965e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V966e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V967e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V968e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V969e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V970e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V971e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V972e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V973e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V974e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V975e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V976e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V977e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_22)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_23) _let_3) (exists ((V978l_27_2E0 u) (V979e1_2E0 u) (V980e2_2E0 u) (V981e3_2E0 u) (V982e4_2E0 u) (V983e5_2E0 u) (V984e6_2E0 u) (V985e7_2E0 u) (V986e8_2E0 u) (V987e9_2E0 u) (V988e10_2E0 u) (V989e11_2E0 u) (V990e12_2E0 u) (V991e13_2E0 u) (V992e14_2E0 u) (V993e15_2E0 u) (V994e16_2E0 u) (V995e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V978l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V979e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V980e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V981e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V982e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V983e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V984e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V985e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V986e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V987e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V988e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V989e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V990e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V991e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V992e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V993e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V994e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V995e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (_let_10 _let_23) (exists ((V996l_27_2E0 u) (V997e1_2E0 u) (V998e2_2E0 u) (V999e3_2E0 u) (V1000e4_2E0 u) (V1001e5_2E0 u) (V1002e6_2E0 u) (V1003e7_2E0 u) (V1004e8_2E0 u) (V1005e9_2E0 u) (V1006e10_2E0 u) (V1007e11_2E0 u) (V1008e12_2E0 u) (V1009e13_2E0 u) (V1010e14_2E0 u) (V1011e15_2E0 u) (V1012e16_2E0 u) (V1013e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V996l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V997e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V998e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V999e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1000e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1001e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1002e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1003e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1004e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1005e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1006e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1007e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1008e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1009e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1010e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1011e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1012e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1013e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1086e1_2E0 u) (V1087e2_2E0 u) (V1088e3_2E0 u) (V1089e4_2E0 u) (V1090e5_2E0 u) (V1091e6_2E0 u) (V1092e7_2E0 u) (V1093e8_2E0 u) (V1094e9_2E0 u) (V1095e10_2E0 u) (V1096e11_2E0 u) (V1097e12_2E0 u) (V1098e13_2E0 u) (V1099e14_2E0 u) (V1100e15_2E0 u) (V1101e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1086e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1087e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1088e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1089e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1090e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1091e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1092e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1093e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1094e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1095e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1096e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1097e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1098e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1099e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1100e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1101e16_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))) (= _let_3 _let_25)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_28) _let_3) (exists ((V1118l_27_2E0 u) (V1119e1_2E0 u) (V1120e2_2E0 u) (V1121e3_2E0 u) (V1122e4_2E0 u) (V1123e5_2E0 u) (V1124e6_2E0 u) (V1125e7_2E0 u) (V1126e8_2E0 u) (V1127e9_2E0 u) (V1128e10_2E0 u) (V1129e11_2E0 u) (V1130e12_2E0 u) (V1131e13_2E0 u) (V1132e14_2E0 u) (V1133e15_2E0 u) (V1134e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1119e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1120e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1121e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1122e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1123e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1124e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1125e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1126e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1127e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1128e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1129e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1130e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1131e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1132e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1133e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1134e16_2E0)) (_let_1 V1118l_27_2E0)))))))))))))))))))))))))))))))))))))) (= (exists ((V1135l_27_2E0 u) (V1136e1_2E0 u) (V1137e2_2E0 u) (V1138e3_2E0 u) (V1139e4_2E0 u) (V1140e5_2E0 u) (V1141e6_2E0 u) (V1142e7_2E0 u) (V1143e8_2E0 u) (V1144e9_2E0 u) (V1145e10_2E0 u) (V1146e11_2E0 u) (V1147e12_2E0 u) (V1148e13_2E0 u) (V1149e14_2E0 u) (V1150e15_2E0 u) (V1151e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1136e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1137e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1138e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1139e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1140e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1141e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1142e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1143e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1144e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1145e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1146e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1147e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1148e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1149e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1150e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1151e16_2E0)) (_let_1 V1135l_27_2E0))))))))))))))))))))))))))))))))))))) (_let_8 _let_28)) (= (_let_10 _let_25) (exists ((V1169l_27_2E0 u) (V1170e1_2E0 u) (V1171e2_2E0 u) (V1172e3_2E0 u) (V1173e4_2E0 u) (V1174e5_2E0 u) (V1175e6_2E0 u) (V1176e7_2E0 u) (V1177e8_2E0 u) (V1178e9_2E0 u) (V1179e10_2E0 u) (V1180e11_2E0 u) (V1181e12_2E0 u) (V1182e13_2E0 u) (V1183e14_2E0 u) (V1184e15_2E0 u) (V1185e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1170e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1171e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1172e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1173e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1174e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1175e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1176e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1177e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1178e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1179e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1180e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1181e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1182e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1183e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1184e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1185e16_2E0)) (_let_1 V1169l_27_2E0)))))))))))))))))))))))))))))))))))))) (= (_let_10 _let_26) (exists ((V1203l_27_2E0 u) (V1204e1_2E0 u) (V1205e2_2E0 u) (V1206e3_2E0 u) (V1207e4_2E0 u) (V1208e5_2E0 u) (V1209e6_2E0 u) (V1210e7_2E0 u) (V1211e8_2E0 u) (V1212e9_2E0 u) (V1213e10_2E0 u) (V1214e11_2E0 u) (V1215e12_2E0 u) (V1216e13_2E0 u) (V1217e14_2E0 u) (V1218e15_2E0 u) (V1219e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1203l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1204e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1205e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1206e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1207e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1208e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1209e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1210e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1211e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1212e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1213e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1214e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1215e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1216e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1217e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1218e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1219e16_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (exists ((V1220l_27_2E0 u) (V1221e1_2E0 u) (V1222e2_2E0 u) (V1223e3_2E0 u) (V1224e4_2E0 u) (V1225e5_2E0 u) (V1226e6_2E0 u) (V1227e7_2E0 u) (V1228e8_2E0 u) (V1229e9_2E0 u) (V1230e10_2E0 u) (V1231e11_2E0 u) (V1232e12_2E0 u) (V1233e13_2E0 u) (V1234e14_2E0 u) (V1235e15_2E0 u) (V1236e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1220l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1221e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1222e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1223e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1224e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1225e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1226e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1227e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1228e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1229e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1230e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1231e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1232e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1233e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1234e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1235e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1236e16_2E0)) _let_2)))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_27) _let_3)) (= (_let_10 _let_27) (exists ((V1237l_27_2E0 u) (V1238e1_2E0 u) (V1239e2_2E0 u) (V1240e3_2E0 u) (V1241e4_2E0 u) (V1242e5_2E0 u) (V1243e6_2E0 u) (V1244e7_2E0 u) (V1245e8_2E0 u) (V1246e9_2E0 u) (V1247e10_2E0 u) (V1248e11_2E0 u) (V1249e12_2E0 u) (V1250e13_2E0 u) (V1251e14_2E0 u) (V1252e15_2E0 u) (V1253e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1237l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1238e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1239e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1240e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1241e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1242e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1243e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1244e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1245e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1246e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1247e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1248e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1249e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1250e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1251e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1252e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1253e16_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (= _let_3 _let_26) (exists ((V1254l_27_2E0 u) (V1255e1_2E0 u) (V1256e2_2E0 u) (V1257e3_2E0 u) (V1258e4_2E0 u) (V1259e5_2E0 u) (V1260e6_2E0 u) (V1261e7_2E0 u) (V1262e8_2E0 u) (V1263e9_2E0 u) (V1264e10_2E0 u) (V1265e11_2E0 u) (V1266e12_2E0 u) (V1267e13_2E0 u) (V1268e14_2E0 u) (V1269e15_2E0 u) (V1270e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1254l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1255e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1256e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1257e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1258e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1259e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1260e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1261e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1262e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1263e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1264e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1265e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1266e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1267e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1268e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1269e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1270e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1322e1_2E0 u) (V1323e2_2E0 u) (V1324e3_2E0 u) (V1325e4_2E0 u) (V1326e5_2E0 u) (V1327e6_2E0 u) (V1328e7_2E0 u) (V1329e8_2E0 u) (V1330e9_2E0 u) (V1331e10_2E0 u) (V1332e11_2E0 u) (V1333e12_2E0 u) (V1334e13_2E0 u) (V1335e14_2E0 u) (V1336e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1322e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1323e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1324e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1325e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1326e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1327e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1328e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1329e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1330e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1331e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1332e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1333e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1334e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1335e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1336e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))) (= _let_3 _let_28)) (= (_let_8 _let_31) (exists ((V1368l_27_2E0 u) (V1369e1_2E0 u) (V1370e2_2E0 u) (V1371e3_2E0 u) (V1372e4_2E0 u) (V1373e5_2E0 u) (V1374e6_2E0 u) (V1375e7_2E0 u) (V1376e8_2E0 u) (V1377e9_2E0 u) (V1378e10_2E0 u) (V1379e11_2E0 u) (V1380e12_2E0 u) (V1381e13_2E0 u) (V1382e14_2E0 u) (V1383e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1369e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1370e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1371e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1372e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1373e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1374e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1375e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1376e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1377e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1378e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1379e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1380e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1381e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1382e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1383e15_2E0)) (_let_1 V1368l_27_2E0)))))))))))))))))))))))))))))))))))) (= (exists ((V1384l_27_2E0 u) (V1385e1_2E0 u) (V1386e2_2E0 u) (V1387e3_2E0 u) (V1388e4_2E0 u) (V1389e5_2E0 u) (V1390e6_2E0 u) (V1391e7_2E0 u) (V1392e8_2E0 u) (V1393e9_2E0 u) (V1394e10_2E0 u) (V1395e11_2E0 u) (V1396e12_2E0 u) (V1397e13_2E0 u) (V1398e14_2E0 u) (V1399e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1385e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1386e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1387e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1388e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1389e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1390e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1391e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1392e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1393e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1394e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1395e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1396e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1397e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1398e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1399e15_2E0)) (_let_1 V1384l_27_2E0))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_28) _let_3)) (= (exists ((V1448l_27_2E0 u) (V1449e1_2E0 u) (V1450e2_2E0 u) (V1451e3_2E0 u) (V1452e4_2E0 u) (V1453e5_2E0 u) (V1454e6_2E0 u) (V1455e7_2E0 u) (V1456e8_2E0 u) (V1457e9_2E0 u) (V1458e10_2E0 u) (V1459e11_2E0 u) (V1460e12_2E0 u) (V1461e13_2E0 u) (V1462e14_2E0 u) (V1463e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1448l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1449e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1450e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1451e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1452e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1453e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1454e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1455e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1456e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1457e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1458e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1459e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1460e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1461e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1462e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1463e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_33) _let_3)) (= (exists ((V1528l_27_2E0 u) (V1529e1_2E0 u) (V1530e2_2E0 u) (V1531e3_2E0 u) (V1532e4_2E0 u) (V1533e5_2E0 u) (V1534e6_2E0 u) (V1535e7_2E0 u) (V1536e8_2E0 u) (V1537e9_2E0 u) (V1538e10_2E0 u) (V1539e11_2E0 u) (V1540e12_2E0 u) (V1541e13_2E0 u) (V1542e14_2E0 u) (V1543e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1528l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1529e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1530e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1531e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1532e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1533e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1534e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1535e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1536e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1537e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1538e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1539e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1540e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1541e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1542e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1543e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_33 _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_34) _let_3) (exists ((V1572l_27_2E0 u) (V1573e1_2E0 u) (V1574e2_2E0 u) (V1575e3_2E0 u) (V1576e4_2E0 u) (V1577e5_2E0 u) (V1578e6_2E0 u) (V1579e7_2E0 u) (V1580e8_2E0 u) (V1581e9_2E0 u) (V1582e10_2E0 u) (V1583e11_2E0 u) (V1584e12_2E0 u) (V1585e13_2E0 u) (V1586e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1573e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1574e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1575e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1576e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1577e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1578e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1579e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1580e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1581e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1582e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1583e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1584e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1585e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1586e14_2E0)) (_let_1 V1572l_27_2E0)))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_31) _let_3) (exists ((V1602l_27_2E0 u) (V1603e1_2E0 u) (V1604e2_2E0 u) (V1605e3_2E0 u) (V1606e4_2E0 u) (V1607e5_2E0 u) (V1608e6_2E0 u) (V1609e7_2E0 u) (V1610e8_2E0 u) (V1611e9_2E0 u) (V1612e10_2E0 u) (V1613e11_2E0 u) (V1614e12_2E0 u) (V1615e13_2E0 u) (V1616e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1603e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1604e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1605e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1606e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1607e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1608e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1609e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1610e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1611e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1612e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1613e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1614e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1615e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1616e14_2E0)) (_let_1 V1602l_27_2E0)))))))))))))))))))))))))))))))))) (= (exists ((V1617l_27_2E0 u) (V1618e1_2E0 u) (V1619e2_2E0 u) (V1620e3_2E0 u) (V1621e4_2E0 u) (V1622e5_2E0 u) (V1623e6_2E0 u) (V1624e7_2E0 u) (V1625e8_2E0 u) (V1626e9_2E0 u) (V1627e10_2E0 u) (V1628e11_2E0 u) (V1629e12_2E0 u) (V1630e13_2E0 u) (V1631e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1618e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1619e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1620e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1621e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1622e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1623e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1624e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1625e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1626e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1627e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1628e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1629e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1630e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1631e14_2E0)) (_let_1 V1617l_27_2E0))))))))))))))))))))))))))))))))) (_let_10 _let_31)) (= (exists ((V1662l_27_2E0 u) (V1663e1_2E0 u) (V1664e2_2E0 u) (V1665e3_2E0 u) (V1666e4_2E0 u) (V1667e5_2E0 u) (V1668e6_2E0 u) (V1669e7_2E0 u) (V1670e8_2E0 u) (V1671e9_2E0 u) (V1672e10_2E0 u) (V1673e11_2E0 u) (V1674e12_2E0 u) (V1675e13_2E0 u) (V1676e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1662l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1663e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1664e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1665e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1666e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1667e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1668e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1669e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1670e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1671e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1672e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1673e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1674e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1675e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1676e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_36) _let_3)) (= (= _let_3 _let_35) (exists ((V1692l_27_2E0 u) (V1693e1_2E0 u) (V1694e2_2E0 u) (V1695e3_2E0 u) (V1696e4_2E0 u) (V1697e5_2E0 u) (V1698e6_2E0 u) (V1699e7_2E0 u) (V1700e8_2E0 u) (V1701e9_2E0 u) (V1702e10_2E0 u) (V1703e11_2E0 u) (V1704e12_2E0 u) (V1705e13_2E0 u) (V1706e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1692l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1693e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1694e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1695e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1696e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1697e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1698e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1699e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1700e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1701e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1702e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1703e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1704e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1705e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1706e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_34) (exists ((V1752e1_2E0 u) (V1753e2_2E0 u) (V1754e3_2E0 u) (V1755e4_2E0 u) (V1756e5_2E0 u) (V1757e6_2E0 u) (V1758e7_2E0 u) (V1759e8_2E0 u) (V1760e9_2E0 u) (V1761e10_2E0 u) (V1762e11_2E0 u) (V1763e12_2E0 u) (V1764e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1752e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1753e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1754e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1755e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1756e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1757e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1758e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1759e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1760e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1761e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1762e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1763e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1764e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))) (= (= _let_34 _let_3) (exists ((V1765e1_2E0 u) (V1766e2_2E0 u) (V1767e3_2E0 u) (V1768e4_2E0 u) (V1769e5_2E0 u) (V1770e6_2E0 u) (V1771e7_2E0 u) (V1772e8_2E0 u) (V1773e9_2E0 u) (V1774e10_2E0 u) (V1775e11_2E0 u) (V1776e12_2E0 u) (V1777e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1765e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1766e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1767e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1768e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1769e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1770e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1771e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1772e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1773e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1774e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1775e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1776e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1777e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))) (= (_let_8 _let_38) (exists ((V1792l_27_2E0 u) (V1793e1_2E0 u) (V1794e2_2E0 u) (V1795e3_2E0 u) (V1796e4_2E0 u) (V1797e5_2E0 u) (V1798e6_2E0 u) (V1799e7_2E0 u) (V1800e8_2E0 u) (V1801e9_2E0 u) (V1802e10_2E0 u) (V1803e11_2E0 u) (V1804e12_2E0 u) (V1805e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1793e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1794e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1795e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1796e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1797e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1798e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1799e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1800e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1801e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1802e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1803e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1804e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1805e13_2E0)) (_let_1 V1792l_27_2E0)))))))))))))))))))))))))))))))) (= (_let_10 _let_34) (exists ((V1820l_27_2E0 u) (V1821e1_2E0 u) (V1822e2_2E0 u) (V1823e3_2E0 u) (V1824e4_2E0 u) (V1825e5_2E0 u) (V1826e6_2E0 u) (V1827e7_2E0 u) (V1828e8_2E0 u) (V1829e9_2E0 u) (V1830e10_2E0 u) (V1831e11_2E0 u) (V1832e12_2E0 u) (V1833e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1821e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1822e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1823e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1824e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1825e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1826e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1827e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1828e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1829e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1830e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1831e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1832e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1833e13_2E0)) (_let_1 V1820l_27_2E0)))))))))))))))))))))))))))))))) (= (exists ((V1876l_27_2E0 u) (V1877e1_2E0 u) (V1878e2_2E0 u) (V1879e3_2E0 u) (V1880e4_2E0 u) (V1881e5_2E0 u) (V1882e6_2E0 u) (V1883e7_2E0 u) (V1884e8_2E0 u) (V1885e9_2E0 u) (V1886e10_2E0 u) (V1887e11_2E0 u) (V1888e12_2E0 u) (V1889e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1876l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1877e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1878e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1879e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1880e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1881e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1882e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1883e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1884e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1885e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1886e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1887e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1888e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1889e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (_let_10 _let_40)) (= (= _let_3 _let_40) (exists ((V1918l_27_2E0 u) (V1919e1_2E0 u) (V1920e2_2E0 u) (V1921e3_2E0 u) (V1922e4_2E0 u) (V1923e5_2E0 u) (V1924e6_2E0 u) (V1925e7_2E0 u) (V1926e8_2E0 u) (V1927e9_2E0 u) (V1928e10_2E0 u) (V1929e11_2E0 u) (V1930e12_2E0 u) (V1931e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1918l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1919e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1920e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1921e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1922e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1923e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1924e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1925e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1926e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1927e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1928e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1929e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1930e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1931e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (exists ((V1983l_27_2E0 u) (V1984e1_2E0 u) (V1985e2_2E0 u) (V1986e3_2E0 u) (V1987e4_2E0 u) (V1988e5_2E0 u) (V1989e6_2E0 u) (V1990e7_2E0 u) (V1991e8_2E0 u) (V1992e9_2E0 u) (V1993e10_2E0 u) (V1994e11_2E0 u) (V1995e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1984e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1985e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1986e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1987e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1988e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1989e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1990e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1991e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1992e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1993e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1994e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1995e12_2E0)) (_let_1 V1983l_27_2E0))))))))))))))))))))))))))))) (_let_8 _let_41)) (= (exists ((V2009l_27_2E0 u) (V2010e1_2E0 u) (V2011e2_2E0 u) (V2012e3_2E0 u) (V2013e4_2E0 u) (V2014e5_2E0 u) (V2015e6_2E0 u) (V2016e7_2E0 u) (V2017e8_2E0 u) (V2018e9_2E0 u) (V2019e10_2E0 u) (V2020e11_2E0 u) (V2021e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2010e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2011e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2012e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2013e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2014e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2015e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2016e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2017e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2018e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2019e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2020e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2021e12_2E0)) (_let_1 V2009l_27_2E0))))))))))))))))))))))))))))) (_let_10 _let_38)) (= (exists ((V2022l_27_2E0 u) (V2023e1_2E0 u) (V2024e2_2E0 u) (V2025e3_2E0 u) (V2026e4_2E0 u) (V2027e5_2E0 u) (V2028e6_2E0 u) (V2029e7_2E0 u) (V2030e8_2E0 u) (V2031e9_2E0 u) (V2032e10_2E0 u) (V2033e11_2E0 u) (V2034e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2022l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2023e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2024e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2025e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2026e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2027e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2028e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2029e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2030e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2031e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2032e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2033e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2034e12_2E0)) _let_2)))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_42) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_43) _let_3) (exists ((V2048l_27_2E0 u) (V2049e1_2E0 u) (V2050e2_2E0 u) (V2051e3_2E0 u) (V2052e4_2E0 u) (V2053e5_2E0 u) (V2054e6_2E0 u) (V2055e7_2E0 u) (V2056e8_2E0 u) (V2057e9_2E0 u) (V2058e10_2E0 u) (V2059e11_2E0 u) (V2060e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2048l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2049e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2050e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2051e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2052e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2053e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2054e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2055e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2056e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2057e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2058e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2059e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2060e12_2E0)) _let_2))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_3 _let_43) (exists ((V2100l_27_2E0 u) (V2101e1_2E0 u) (V2102e2_2E0 u) (V2103e3_2E0 u) (V2104e4_2E0 u) (V2105e5_2E0 u) (V2106e6_2E0 u) (V2107e7_2E0 u) (V2108e8_2E0 u) (V2109e9_2E0 u) (V2110e10_2E0 u) (V2111e11_2E0 u) (V2112e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2100l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2101e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2102e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2103e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2104e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2105e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2106e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2107e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2108e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2109e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2110e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2111e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2112e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2126e1_2E0 u) (V2127e2_2E0 u) (V2128e3_2E0 u) (V2129e4_2E0 u) (V2130e5_2E0 u) (V2131e6_2E0 u) (V2132e7_2E0 u) (V2133e8_2E0 u) (V2134e9_2E0 u) (V2135e10_2E0 u) (V2136e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2126e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2127e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2128e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2129e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2130e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2131e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2132e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2133e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2134e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2135e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2136e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))) (= _let_3 _let_41)) (= (_let_8 _let_44) (exists ((V2160l_27_2E0 u) (V2161e1_2E0 u) (V2162e2_2E0 u) (V2163e3_2E0 u) (V2164e4_2E0 u) (V2165e5_2E0 u) (V2166e6_2E0 u) (V2167e7_2E0 u) (V2168e8_2E0 u) (V2169e9_2E0 u) (V2170e10_2E0 u) (V2171e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2161e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2162e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2163e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2164e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2165e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2166e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2167e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2168e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2169e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2170e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2171e11_2E0)) (_let_1 V2160l_27_2E0)))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_46) _let_3) (exists ((V2196l_27_2E0 u) (V2197e1_2E0 u) (V2198e2_2E0 u) (V2199e3_2E0 u) (V2200e4_2E0 u) (V2201e5_2E0 u) (V2202e6_2E0 u) (V2203e7_2E0 u) (V2204e8_2E0 u) (V2205e9_2E0 u) (V2206e10_2E0 u) (V2207e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2196l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2197e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2198e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2199e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2200e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2201e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2202e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2203e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2204e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2205e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2206e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2207e11_2E0)) _let_2))))))))))))))))))))))))))))) (= (_let_10 _let_46) (exists ((V2208l_27_2E0 u) (V2209e1_2E0 u) (V2210e2_2E0 u) (V2211e3_2E0 u) (V2212e4_2E0 u) (V2213e5_2E0 u) (V2214e6_2E0 u) (V2215e7_2E0 u) (V2216e8_2E0 u) (V2217e9_2E0 u) (V2218e10_2E0 u) (V2219e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2208l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2209e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2210e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2211e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2212e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2213e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2214e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2215e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2216e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2217e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2218e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2219e11_2E0)) _let_2))))))))))))))))))))))))))))) (= (exists ((V2268l_27_2E0 u) (V2269e1_2E0 u) (V2270e2_2E0 u) (V2271e3_2E0 u) (V2272e4_2E0 u) (V2273e5_2E0 u) (V2274e6_2E0 u) (V2275e7_2E0 u) (V2276e8_2E0 u) (V2277e9_2E0 u) (V2278e10_2E0 u) (V2279e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2268l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2269e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2270e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2271e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2272e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2273e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2274e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2275e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2276e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2277e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2278e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2279e11_2E0)) _let_2)))))))))))))))))))))))))))) (= _let_3 _let_45)) (= (= _let_45 _let_3) (exists ((V2280l_27_2E0 u) (V2281e1_2E0 u) (V2282e2_2E0 u) (V2283e3_2E0 u) (V2284e4_2E0 u) (V2285e5_2E0 u) (V2286e6_2E0 u) (V2287e7_2E0 u) (V2288e8_2E0 u) (V2289e9_2E0 u) (V2290e10_2E0 u) (V2291e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2280l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2281e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2282e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2283e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2284e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2285e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2286e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2287e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2288e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2289e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2290e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2291e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2292e1_2E0 u) (V2293e2_2E0 u) (V2294e3_2E0 u) (V2295e4_2E0 u) (V2296e5_2E0 u) (V2297e6_2E0 u) (V2298e7_2E0 u) (V2299e8_2E0 u) (V2300e9_2E0 u) (V2301e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2292e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2293e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2294e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2295e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2296e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2297e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2298e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2299e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2300e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2301e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))) (= _let_3 _let_44)) (= (= _let_44 _let_3) (exists ((V2302e1_2E0 u) (V2303e2_2E0 u) (V2304e3_2E0 u) (V2305e4_2E0 u) (V2306e5_2E0 u) (V2307e6_2E0 u) (V2308e7_2E0 u) (V2309e8_2E0 u) (V2310e9_2E0 u) (V2311e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2302e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2303e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2304e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2305e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2306e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2307e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2308e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2309e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2310e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2311e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))) (= (exists ((V2312l_27_2E0 u) (V2313e1_2E0 u) (V2314e2_2E0 u) (V2315e3_2E0 u) (V2316e4_2E0 u) (V2317e5_2E0 u) (V2318e6_2E0 u) (V2319e7_2E0 u) (V2320e8_2E0 u) (V2321e9_2E0 u) (V2322e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2313e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2314e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2315e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2316e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2317e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2318e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2319e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2320e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2321e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2322e10_2E0)) (_let_1 V2312l_27_2E0))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_47) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_44) _let_3) (exists ((V2334l_27_2E0 u) (V2335e1_2E0 u) (V2336e2_2E0 u) (V2337e3_2E0 u) (V2338e4_2E0 u) (V2339e5_2E0 u) (V2340e6_2E0 u) (V2341e7_2E0 u) (V2342e8_2E0 u) (V2343e9_2E0 u) (V2344e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2335e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2336e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2337e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2338e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2339e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2340e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2341e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2342e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2343e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2344e10_2E0)) (_let_1 V2334l_27_2E0)))))))))))))))))))))))))) (= (exists ((V2400l_27_2E0 u) (V2401e1_2E0 u) (V2402e2_2E0 u) (V2403e3_2E0 u) (V2404e4_2E0 u) (V2405e5_2E0 u) (V2406e6_2E0 u) (V2407e7_2E0 u) (V2408e8_2E0 u) (V2409e9_2E0 u) (V2410e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2400l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2401e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2402e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2403e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2404e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2405e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2406e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2407e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2408e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2409e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2410e10_2E0)) _let_2)))))))))))))))))))))))))) (= _let_3 _let_48)) (= (= _let_49 _let_3) (exists ((V2433l_27_2E0 u) (V2434e1_2E0 u) (V2435e2_2E0 u) (V2436e3_2E0 u) (V2437e4_2E0 u) (V2438e5_2E0 u) (V2439e6_2E0 u) (V2440e7_2E0 u) (V2441e8_2E0 u) (V2442e9_2E0 u) (V2443e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2433l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2434e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2435e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2436e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2437e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2438e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2439e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2440e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2441e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2442e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2443e10_2E0)) _let_2))))))))))))))))))))))))))) (= (exists ((V2444e1_2E0 u) (V2445e2_2E0 u) (V2446e3_2E0 u) (V2447e4_2E0 u) (V2448e5_2E0 u) (V2449e6_2E0 u) (V2450e7_2E0 u) (V2451e8_2E0 u) (V2452e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2444e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2445e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2446e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2447e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2448e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2449e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2450e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2451e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2452e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (= _let_3 _let_47)) (= (_let_8 _let_50) (exists ((V2472l_27_2E0 u) (V2473e1_2E0 u) (V2474e2_2E0 u) (V2475e3_2E0 u) (V2476e4_2E0 u) (V2477e5_2E0 u) (V2478e6_2E0 u) (V2479e7_2E0 u) (V2480e8_2E0 u) (V2481e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2473e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2474e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2475e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2476e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2477e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2478e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2479e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2480e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2481e9_2E0)) (_let_1 V2472l_27_2E0)))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_47) _let_3) (exists ((V2482l_27_2E0 u) (V2483e1_2E0 u) (V2484e2_2E0 u) (V2485e3_2E0 u) (V2486e4_2E0 u) (V2487e5_2E0 u) (V2488e6_2E0 u) (V2489e7_2E0 u) (V2490e8_2E0 u) (V2491e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2483e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2484e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2485e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2486e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2487e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2488e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2489e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2490e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2491e9_2E0)) (_let_1 V2482l_27_2E0)))))))))))))))))))))))) (= (exists ((V2492l_27_2E0 u) (V2493e1_2E0 u) (V2494e2_2E0 u) (V2495e3_2E0 u) (V2496e4_2E0 u) (V2497e5_2E0 u) (V2498e6_2E0 u) (V2499e7_2E0 u) (V2500e8_2E0 u) (V2501e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2493e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2494e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2495e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2496e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2497e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2498e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2499e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2500e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2501e9_2E0)) (_let_1 V2492l_27_2E0))))))))))))))))))))))) (_let_10 _let_47)) (= (exists ((V2502l_27_2E0 u) (V2503e1_2E0 u) (V2504e2_2E0 u) (V2505e3_2E0 u) (V2506e4_2E0 u) (V2507e5_2E0 u) (V2508e6_2E0 u) (V2509e7_2E0 u) (V2510e8_2E0 u) (V2511e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2502l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2503e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2504e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2505e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2506e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2507e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2508e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2509e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2510e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2511e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_51) _let_3)) (= (exists ((V2522l_27_2E0 u) (V2523e1_2E0 u) (V2524e2_2E0 u) (V2525e3_2E0 u) (V2526e4_2E0 u) (V2527e5_2E0 u) (V2528e6_2E0 u) (V2529e7_2E0 u) (V2530e8_2E0 u) (V2531e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2522l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2523e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2524e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2525e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2526e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2527e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2528e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2529e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2530e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2531e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_52) _let_3)) (= (= _let_3 _let_51) (exists ((V2542l_27_2E0 u) (V2543e1_2E0 u) (V2544e2_2E0 u) (V2545e3_2E0 u) (V2546e4_2E0 u) (V2547e5_2E0 u) (V2548e6_2E0 u) (V2549e7_2E0 u) (V2550e8_2E0 u) (V2551e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2542l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2543e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2544e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2545e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2546e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2547e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2548e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2549e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2550e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2551e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_54) _let_3) (exists ((V2598l_27_2E0 u) (V2599e1_2E0 u) (V2600e2_2E0 u) (V2601e3_2E0 u) (V2602e4_2E0 u) (V2603e5_2E0 u) (V2604e6_2E0 u) (V2605e7_2E0 u) (V2606e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2599e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2600e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2601e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2602e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2603e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2604e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2605e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2606e8_2E0)) (_let_1 V2598l_27_2E0)))))))))))))))))))))) (= (exists ((V2607l_27_2E0 u) (V2608e1_2E0 u) (V2609e2_2E0 u) (V2610e3_2E0 u) (V2611e4_2E0 u) (V2612e5_2E0 u) (V2613e6_2E0 u) (V2614e7_2E0 u) (V2615e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2608e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2609e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2610e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2611e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2612e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2613e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2614e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2615e8_2E0)) (_let_1 V2607l_27_2E0))))))))))))))))))))) (_let_8 _let_54)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_50) _let_3) (exists ((V2616l_27_2E0 u) (V2617e1_2E0 u) (V2618e2_2E0 u) (V2619e3_2E0 u) (V2620e4_2E0 u) (V2621e5_2E0 u) (V2622e6_2E0 u) (V2623e7_2E0 u) (V2624e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2617e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2618e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2619e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2620e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2621e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2622e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2623e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2624e8_2E0)) (_let_1 V2616l_27_2E0)))))))))))))))))))))) (= (exists ((V2625l_27_2E0 u) (V2626e1_2E0 u) (V2627e2_2E0 u) (V2628e3_2E0 u) (V2629e4_2E0 u) (V2630e5_2E0 u) (V2631e6_2E0 u) (V2632e7_2E0 u) (V2633e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2626e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2627e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2628e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2629e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2630e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2631e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2632e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2633e8_2E0)) (_let_1 V2625l_27_2E0))))))))))))))))))))) (_let_10 _let_50)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_53) _let_3) (exists ((V2634l_27_2E0 u) (V2635e1_2E0 u) (V2636e2_2E0 u) (V2637e3_2E0 u) (V2638e4_2E0 u) (V2639e5_2E0 u) (V2640e6_2E0 u) (V2641e7_2E0 u) (V2642e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2634l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2635e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2636e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2637e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2638e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2639e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2640e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2641e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2642e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_76) _let_3) (exists ((V2652l_27_2E0 u) (V2653e1_2E0 u) (V2654e2_2E0 u) (V2655e3_2E0 u) (V2656e4_2E0 u) (V2657e5_2E0 u) (V2658e6_2E0 u) (V2659e7_2E0 u) (V2660e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2652l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2653e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2654e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2655e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2656e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2657e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2658e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2659e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2660e8_2E0)) _let_2))))))))))))))))))))))) (= (_let_10 _let_76) (exists ((V2661l_27_2E0 u) (V2662e1_2E0 u) (V2663e2_2E0 u) (V2664e3_2E0 u) (V2665e4_2E0 u) (V2666e5_2E0 u) (V2667e6_2E0 u) (V2668e7_2E0 u) (V2669e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2661l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2662e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2663e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2664e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2665e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2666e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2667e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2668e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2669e8_2E0)) _let_2))))))))))))))))))))))) (= (= _let_53 _let_3) (exists ((V2679l_27_2E0 u) (V2680e1_2E0 u) (V2681e2_2E0 u) (V2682e3_2E0 u) (V2683e4_2E0 u) (V2684e5_2E0 u) (V2685e6_2E0 u) (V2686e7_2E0 u) (V2687e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2679l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2680e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2681e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2682e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2683e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2684e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2685e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2686e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2687e8_2E0)) _let_2))))))))))))))))))))))) (= (exists ((V2688l_27_2E0 u) (V2689e1_2E0 u) (V2690e2_2E0 u) (V2691e3_2E0 u) (V2692e4_2E0 u) (V2693e5_2E0 u) (V2694e6_2E0 u) (V2695e7_2E0 u) (V2696e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2688l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2689e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2690e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2691e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2692e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2693e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2694e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2695e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2696e8_2E0)) _let_2)))))))))))))))))))))) (= _let_3 _let_76)) (= (exists ((V2697l_27_2E0 u) (V2698e1_2E0 u) (V2699e2_2E0 u) (V2700e3_2E0 u) (V2701e4_2E0 u) (V2702e5_2E0 u) (V2703e6_2E0 u) (V2704e7_2E0 u) (V2705e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2697l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2698e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2699e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2700e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2701e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2702e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2703e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2704e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2705e8_2E0)) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_76 _let_3)) (= (exists ((V2720l_27_2E0 u) (V2721e1_2E0 u) (V2722e2_2E0 u) (V2723e3_2E0 u) (V2724e4_2E0 u) (V2725e5_2E0 u) (V2726e6_2E0 u) (V2727e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2721e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2722e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2723e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2724e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2725e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2726e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2727e7_2E0)) (_let_1 V2720l_27_2E0))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_58) _let_3)) (= (_let_8 _let_58) (exists ((V2728l_27_2E0 u) (V2729e1_2E0 u) (V2730e2_2E0 u) (V2731e3_2E0 u) (V2732e4_2E0 u) (V2733e5_2E0 u) (V2734e6_2E0 u) (V2735e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2729e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2730e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2731e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2732e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2733e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2734e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2735e7_2E0)) (_let_1 V2728l_27_2E0)))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_55) _let_3) (exists ((V2752l_27_2E0 u) (V2753e1_2E0 u) (V2754e2_2E0 u) (V2755e3_2E0 u) (V2756e4_2E0 u) (V2757e5_2E0 u) (V2758e6_2E0 u) (V2759e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2752l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2753e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2754e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2755e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2756e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2757e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2758e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2759e7_2E0)) _let_2))))))))))))))))))))) (= (= _let_3 _let_55) (exists ((V2784l_27_2E0 u) (V2785e1_2E0 u) (V2786e2_2E0 u) (V2787e3_2E0 u) (V2788e4_2E0 u) (V2789e5_2E0 u) (V2790e6_2E0 u) (V2791e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2784l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2785e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2786e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2787e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2788e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2789e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2790e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2791e7_2E0)) _let_2))))))))))))))))))))) (= (= _let_3 _let_58) (exists ((V2816e1_2E0 u) (V2817e2_2E0 u) (V2818e3_2E0 u) (V2819e4_2E0 u) (V2820e5_2E0 u) (V2821e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2816e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2817e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2818e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2819e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2820e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2821e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= (exists ((V2822e1_2E0 u) (V2823e2_2E0 u) (V2824e3_2E0 u) (V2825e4_2E0 u) (V2826e5_2E0 u) (V2827e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2822e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2823e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2824e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2825e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2826e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2827e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) (= _let_58 _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_59) _let_3) (exists ((V2856l_27_2E0 u) (V2857e1_2E0 u) (V2858e2_2E0 u) (V2859e3_2E0 u) (V2860e4_2E0 u) (V2861e5_2E0 u) (V2862e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2856l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2857e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2858e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2859e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2860e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2861e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2862e6_2E0)) _let_2))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_60) _let_3) (exists ((V2870l_27_2E0 u) (V2871e1_2E0 u) (V2872e2_2E0 u) (V2873e3_2E0 u) (V2874e4_2E0 u) (V2875e5_2E0 u) (V2876e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2870l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2871e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2872e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2873e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2874e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2875e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2876e6_2E0)) _let_2))))))))))))))))))) (= (= _let_3 _let_59) (exists ((V2884l_27_2E0 u) (V2885e1_2E0 u) (V2886e2_2E0 u) (V2887e3_2E0 u) (V2888e4_2E0 u) (V2889e5_2E0 u) (V2890e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2884l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2885e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2886e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2887e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2888e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2889e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2890e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V2891l_27_2E0 u) (V2892e1_2E0 u) (V2893e2_2E0 u) (V2894e3_2E0 u) (V2895e4_2E0 u) (V2896e5_2E0 u) (V2897e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2891l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2892e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2893e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2894e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2895e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2896e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2897e6_2E0)) _let_2))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_59 _let_3)) (= (= _let_3 _let_60) (exists ((V2898l_27_2E0 u) (V2899e1_2E0 u) (V2900e2_2E0 u) (V2901e3_2E0 u) (V2902e4_2E0 u) (V2903e5_2E0 u) (V2904e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2898l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2899e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2900e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2901e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2902e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2903e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2904e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V2905l_27_2E0 u) (V2906e1_2E0 u) (V2907e2_2E0 u) (V2908e3_2E0 u) (V2909e4_2E0 u) (V2910e5_2E0 u) (V2911e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2905l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2906e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2907e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2908e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2909e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2910e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2911e6_2E0)) _let_2)))))))))))))))))) (= _let_60 _let_3)) (= (= _let_57 _let_3) (exists ((V2917e1_2E0 u) (V2918e2_2E0 u) (V2919e3_2E0 u) (V2920e4_2E0 u) (V2921e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2917e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2918e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2919e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2920e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2921e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (exists ((V2922l_27_2E0 u) (V2923e1_2E0 u) (V2924e2_2E0 u) (V2925e3_2E0 u) (V2926e4_2E0 u) (V2927e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2923e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2924e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2925e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2926e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2927e5_2E0)) (_let_1 V2922l_27_2E0))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_62) _let_3)) (= (exists ((V2928l_27_2E0 u) (V2929e1_2E0 u) (V2930e2_2E0 u) (V2931e3_2E0 u) (V2932e4_2E0 u) (V2933e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2929e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2930e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2931e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2932e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2933e5_2E0)) (_let_1 V2928l_27_2E0))))))))))))))) (_let_8 _let_62)) (= (exists ((V2934l_27_2E0 u) (V2935e1_2E0 u) (V2936e2_2E0 u) (V2937e3_2E0 u) (V2938e4_2E0 u) (V2939e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2935e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2936e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2937e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2938e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2939e5_2E0)) (_let_1 V2934l_27_2E0))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_57) _let_3)) (= (exists ((V2946l_27_2E0 u) (V2947e1_2E0 u) (V2948e2_2E0 u) (V2949e3_2E0 u) (V2950e4_2E0 u) (V2951e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2946l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2947e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2948e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2949e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2950e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2951e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_75) _let_3)) (= (_let_10 _let_75) (exists ((V2952l_27_2E0 u) (V2953e1_2E0 u) (V2954e2_2E0 u) (V2955e3_2E0 u) (V2956e4_2E0 u) (V2957e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2952l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2953e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2954e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2955e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2956e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2957e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_61) _let_3) (exists ((V2958l_27_2E0 u) (V2959e1_2E0 u) (V2960e2_2E0 u) (V2961e3_2E0 u) (V2962e4_2E0 u) (V2963e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2958l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2959e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2960e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2961e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2962e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2963e5_2E0)) _let_2))))))))))))))))) (= (= _let_3 _let_75) (exists ((V2970l_27_2E0 u) (V2971e1_2E0 u) (V2972e2_2E0 u) (V2973e3_2E0 u) (V2974e4_2E0 u) (V2975e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2970l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2971e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2972e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2973e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2974e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2975e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_75 _let_3) (exists ((V2976l_27_2E0 u) (V2977e1_2E0 u) (V2978e2_2E0 u) (V2979e3_2E0 u) (V2980e4_2E0 u) (V2981e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2976l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2977e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2978e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2979e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2980e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2981e5_2E0)) _let_2))))))))))))))))) (= (exists ((V3012l_27_2E0 u) (V3013e1_2E0 u) (V3014e2_2E0 u) (V3015e3_2E0 u) (V3016e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3013e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3014e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3015e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3016e4_2E0)) (_let_1 V3012l_27_2E0))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_62) _let_3)) (= (exists ((V3017l_27_2E0 u) (V3018e1_2E0 u) (V3019e2_2E0 u) (V3020e3_2E0 u) (V3021e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3018e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3019e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3020e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3021e4_2E0)) (_let_1 V3017l_27_2E0))))))))))))) (_let_10 _let_62)) (= (exists ((V3022l_27_2E0 u) (V3023e1_2E0 u) (V3024e2_2E0 u) (V3025e3_2E0 u) (V3026e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3022l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3023e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3024e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3025e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3026e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_65) _let_3)) (= (exists ((V3027l_27_2E0 u) (V3028e1_2E0 u) (V3029e2_2E0 u) (V3030e3_2E0 u) (V3031e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3027l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3028e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3029e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3030e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3031e4_2E0)) _let_2)))))))))))))) (_let_10 _let_65)) (= (exists ((V3047l_27_2E0 u) (V3048e1_2E0 u) (V3049e2_2E0 u) (V3050e3_2E0 u) (V3051e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3047l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3048e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3049e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3050e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3051e4_2E0)) _let_2)))))))))))))) (= _let_65 _let_3)) (= (= _let_63 _let_3) (exists ((V3065e1_2E0 u) (V3066e2_2E0 u) (V3067e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3065e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3066e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3067e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (exists ((V3068l_27_2E0 u) (V3069e1_2E0 u) (V3070e2_2E0 u) (V3071e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3069e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3070e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3071e3_2E0)) (_let_1 V3068l_27_2E0))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_68) _let_3)) (= (exists ((V3072l_27_2E0 u) (V3073e1_2E0 u) (V3074e2_2E0 u) (V3075e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3073e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3074e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3075e3_2E0)) (_let_1 V3072l_27_2E0))))))))))) (_let_8 _let_68)) (= (exists ((V3076l_27_2E0 u) (V3077e1_2E0 u) (V3078e2_2E0 u) (V3079e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3077e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3078e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3079e3_2E0)) (_let_1 V3076l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_63) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_66) _let_3) (exists ((V3084l_27_2E0 u) (V3085e1_2E0 u) (V3086e2_2E0 u) (V3087e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3084l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3085e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3086e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3087e3_2E0)) _let_2))))))))))))) (= (exists ((V3100l_27_2E0 u) (V3101e1_2E0 u) (V3102e2_2E0 u) (V3103e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3100l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3101e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3102e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3103e3_2E0)) _let_2)))))))))))) (= _let_3 _let_66)) (= (exists ((V3118e1_2E0 u) (V3119e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3118e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3119e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_68 _let_3)) (= (exists ((V3120l_27_2E0 u) (V3121e1_2E0 u) (V3122e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3121e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3122e2_2E0)) (_let_1 V3120l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_71) _let_3)) (= (_let_8 _let_71) (exists ((V3123l_27_2E0 u) (V3124e1_2E0 u) (V3125e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3124e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3125e2_2E0)) (_let_1 V3123l_27_2E0)))))))))) (= (exists ((V3132l_27_2E0 u) (V3133e1_2E0 u) (V3134e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3132l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3133e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3134e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_70) _let_3)) (= (_let_10 _let_70) (exists ((V3135l_27_2E0 u) (V3136e1_2E0 u) (V3137e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3135l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3136e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3137e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_70 _let_3) (exists ((V3147l_27_2E0 u) (V3148e1_2E0 u) (V3149e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3147l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3148e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3149e2_2E0)) _let_2))))))))))) (= (= _let_3 _let_69) (exists ((V3150l_27_2E0 u) (V3151e1_2E0 u) (V3152e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3150l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3151e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3152e2_2E0)) _let_2))))))))))) (= (_let_8 mono_2Ec_2Enum_2E0) (exists ((V3160l_27_2E0 u) (V3161e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3161e1_2E0)) (_let_1 V3160l_27_2E0))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_72) _let_3) (exists ((V3166l_27_2E0 u) (V3167e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3166l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3167e1_2E0)) _let_2)))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_73) _let_3) (exists ((V3170l_27_2E0 u) (V3171e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3170l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3171e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V3172l_27_2E0 u) (V3173e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3172l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3173e1_2E0)) _let_2))))))) (_let_10 _let_73)) (= (= _let_3 _let_73) (exists ((V3178l_27_2E0 u) (V3179e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3178l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3179e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_3 mono_2Ec_2Enum_2E0) _let_74) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0) _let_74) (= _let_74 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3)) (= _let_74 ((mono_2Ec_2Earithmetic_2E_3E _let_71) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_71) _let_74) (= _let_74 (= mono_2Ec_2Enum_2E0 _let_3)) (= (= _let_73 _let_3) (exists ((V3180l_27_2E0 u) (V3181e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3180l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3181e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V3176l_27_2E0 u) (V3177e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3176l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3177e1_2E0)) _let_2))))))) (= _let_72 _let_3)) (= (exists ((V3174l_27_2E0 u) (V3175e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3174l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3175e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_3 _let_72)) (= (_let_10 _let_72) (exists ((V3168l_27_2E0 u) (V3169e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3168l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3169e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (_let_10 _let_71) (exists ((V3164l_27_2E0 u) (V3165e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3165e1_2E0)) (_let_1 V3164l_27_2E0))))))) (= (exists ((V3162l_27_2E0 u) (V3163e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3163e1_2E0)) (_let_1 V3162l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_71) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_3) (exists ((V3158l_27_2E0 u) (V3159e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3159e1_2E0)) (_let_1 V3158l_27_2E0))))))) (= (= _let_71 _let_3) (exists ((V3157e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3157e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (= _let_3 _let_71) (exists ((V3156e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3156e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (= _let_69 _let_3) (exists ((V3153l_27_2E0 u) (V3154e1_2E0 u) (V3155e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3153l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3154e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3155e2_2E0)) _let_2))))))))))) (= (= _let_3 _let_70) (exists ((V3144l_27_2E0 u) (V3145e1_2E0 u) (V3146e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3144l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3145e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3146e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_10 _let_69) (exists ((V3141l_27_2E0 u) (V3142e1_2E0 u) (V3143e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3141l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3142e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3143e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_69) _let_3) (exists ((V3138l_27_2E0 u) (V3139e1_2E0 u) (V3140e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3138l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3139e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3140e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3129l_27_2E0 u) (V3130e1_2E0 u) (V3131e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3130e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3131e2_2E0)) (_let_1 V3129l_27_2E0))))))))) (_let_10 _let_68)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_68) _let_3) (exists ((V3126l_27_2E0 u) (V3127e1_2E0 u) (V3128e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3127e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3128e2_2E0)) (_let_1 V3126l_27_2E0)))))))))) (= (exists ((V3116e1_2E0 u) (V3117e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3116e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3117e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_3 _let_68)) (= (exists ((V3112l_27_2E0 u) (V3113e1_2E0 u) (V3114e2_2E0 u) (V3115e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3112l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3113e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3114e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3115e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_67 _let_3)) (= (= _let_3 _let_67) (exists ((V3108l_27_2E0 u) (V3109e1_2E0 u) (V3110e2_2E0 u) (V3111e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3108l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3109e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3110e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3111e3_2E0)) _let_2))))))))))))) (= (exists ((V3104l_27_2E0 u) (V3105e1_2E0 u) (V3106e2_2E0 u) (V3107e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3104l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3105e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3106e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3107e3_2E0)) _let_2)))))))))))) (= _let_66 _let_3)) (= (_let_10 _let_67) (exists ((V3096l_27_2E0 u) (V3097e1_2E0 u) (V3098e2_2E0 u) (V3099e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3096l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3097e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3098e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3099e3_2E0)) _let_2))))))))))))) (= (exists ((V3092l_27_2E0 u) (V3093e1_2E0 u) (V3094e2_2E0 u) (V3095e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3092l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3093e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3094e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3095e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_67) _let_3)) (= (_let_10 _let_66) (exists ((V3088l_27_2E0 u) (V3089e1_2E0 u) (V3090e2_2E0 u) (V3091e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3088l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3089e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3090e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3091e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3080l_27_2E0 u) (V3081e1_2E0 u) (V3082e2_2E0 u) (V3083e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3081e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3082e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3083e3_2E0)) (_let_1 V3080l_27_2E0))))))))))) (_let_10 _let_63)) (= (exists ((V3062e1_2E0 u) (V3063e2_2E0 u) (V3064e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3062e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3063e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3064e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_3 _let_63)) (= (= _let_64 _let_3) (exists ((V3057l_27_2E0 u) (V3058e1_2E0 u) (V3059e2_2E0 u) (V3060e3_2E0 u) (V3061e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3057l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3058e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3059e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3060e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3061e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V3052l_27_2E0 u) (V3053e1_2E0 u) (V3054e2_2E0 u) (V3055e3_2E0 u) (V3056e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3052l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3053e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3054e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3055e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3056e4_2E0)) _let_2)))))))))))))) (= _let_3 _let_64)) (= (= _let_3 _let_65) (exists ((V3042l_27_2E0 u) (V3043e1_2E0 u) (V3044e2_2E0 u) (V3045e3_2E0 u) (V3046e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3042l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3043e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3044e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3045e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3046e4_2E0)) _let_2))))))))))))))) (= (exists ((V3037l_27_2E0 u) (V3038e1_2E0 u) (V3039e2_2E0 u) (V3040e3_2E0 u) (V3041e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3037l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3038e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3039e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3040e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3041e4_2E0)) _let_2)))))))))))))) (_let_10 _let_64)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_64) _let_3) (exists ((V3032l_27_2E0 u) (V3033e1_2E0 u) (V3034e2_2E0 u) (V3035e3_2E0 u) (V3036e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3032l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3033e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3034e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3035e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3036e4_2E0)) _let_2))))))))))))))) (= (_let_8 _let_63) (exists ((V3007l_27_2E0 u) (V3008e1_2E0 u) (V3009e2_2E0 u) (V3010e3_2E0 u) (V3011e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3008e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3009e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3010e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3011e4_2E0)) (_let_1 V3007l_27_2E0)))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_63) _let_3) (exists ((V3002l_27_2E0 u) (V3003e1_2E0 u) (V3004e2_2E0 u) (V3005e3_2E0 u) (V3006e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3003e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3004e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3005e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3006e4_2E0)) (_let_1 V3002l_27_2E0)))))))))))))) (= (exists ((V2998e1_2E0 u) (V2999e2_2E0 u) (V3000e3_2E0 u) (V3001e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2998e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2999e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3000e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3001e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_62 _let_3)) (= (exists ((V2994e1_2E0 u) (V2995e2_2E0 u) (V2996e3_2E0 u) (V2997e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2994e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2995e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2996e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2997e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_3 _let_62)) (= (= _let_61 _let_3) (exists ((V2988l_27_2E0 u) (V2989e1_2E0 u) (V2990e2_2E0 u) (V2991e3_2E0 u) (V2992e4_2E0 u) (V2993e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2988l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2989e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2990e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2991e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2992e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2993e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2982l_27_2E0 u) (V2983e1_2E0 u) (V2984e2_2E0 u) (V2985e3_2E0 u) (V2986e4_2E0 u) (V2987e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2982l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2983e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2984e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2985e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2986e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2987e5_2E0)) _let_2)))))))))))))))) (= _let_3 _let_61)) (= (_let_10 _let_61) (exists ((V2964l_27_2E0 u) (V2965e1_2E0 u) (V2966e2_2E0 u) (V2967e3_2E0 u) (V2968e4_2E0 u) (V2969e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2964l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2965e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2966e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2967e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2968e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2969e5_2E0)) _let_2))))))))))))))))) (= (_let_10 _let_57) (exists ((V2940l_27_2E0 u) (V2941e1_2E0 u) (V2942e2_2E0 u) (V2943e3_2E0 u) (V2944e4_2E0 u) (V2945e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2941e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2942e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2943e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2944e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2945e5_2E0)) (_let_1 V2940l_27_2E0)))))))))))))))) (= (= _let_3 _let_57) (exists ((V2912e1_2E0 u) (V2913e2_2E0 u) (V2914e3_2E0 u) (V2915e4_2E0 u) (V2916e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2912e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2913e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2914e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2915e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2916e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (_let_10 _let_60) (exists ((V2877l_27_2E0 u) (V2878e1_2E0 u) (V2879e2_2E0 u) (V2880e3_2E0 u) (V2881e4_2E0 u) (V2882e5_2E0 u) (V2883e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2877l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2878e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2879e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2880e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2881e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2882e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2883e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V2863l_27_2E0 u) (V2864e1_2E0 u) (V2865e2_2E0 u) (V2866e3_2E0 u) (V2867e4_2E0 u) (V2868e5_2E0 u) (V2869e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2863l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2864e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2865e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2866e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2867e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2868e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2869e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_59)) (= (exists ((V2849l_27_2E0 u) (V2850e1_2E0 u) (V2851e2_2E0 u) (V2852e3_2E0 u) (V2853e4_2E0 u) (V2854e5_2E0 u) (V2855e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2850e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2851e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2852e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2853e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2854e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2855e6_2E0)) (_let_1 V2849l_27_2E0))))))))))))))))) (_let_10 _let_58)) (= (exists ((V2842l_27_2E0 u) (V2843e1_2E0 u) (V2844e2_2E0 u) (V2845e3_2E0 u) (V2846e4_2E0 u) (V2847e5_2E0 u) (V2848e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2843e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2844e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2845e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2846e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2847e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2848e6_2E0)) (_let_1 V2842l_27_2E0))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_58) _let_3)) (= (_let_8 _let_57) (exists ((V2835l_27_2E0 u) (V2836e1_2E0 u) (V2837e2_2E0 u) (V2838e3_2E0 u) (V2839e4_2E0 u) (V2840e5_2E0 u) (V2841e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2836e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2837e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2838e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2839e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2840e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2841e6_2E0)) (_let_1 V2835l_27_2E0)))))))))))))))))) (= (exists ((V2828l_27_2E0 u) (V2829e1_2E0 u) (V2830e2_2E0 u) (V2831e3_2E0 u) (V2832e4_2E0 u) (V2833e5_2E0 u) (V2834e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2829e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2830e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2831e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2832e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2833e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2834e6_2E0)) (_let_1 V2828l_27_2E0))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_57) _let_3)) (= (exists ((V2808l_27_2E0 u) (V2809e1_2E0 u) (V2810e2_2E0 u) (V2811e3_2E0 u) (V2812e4_2E0 u) (V2813e5_2E0 u) (V2814e6_2E0 u) (V2815e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2808l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2809e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2810e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2811e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2812e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2813e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2814e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2815e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_56 _let_3)) (= (= _let_3 _let_56) (exists ((V2800l_27_2E0 u) (V2801e1_2E0 u) (V2802e2_2E0 u) (V2803e3_2E0 u) (V2804e4_2E0 u) (V2805e5_2E0 u) (V2806e6_2E0 u) (V2807e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2800l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2801e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2802e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2803e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2804e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2805e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2806e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2807e7_2E0)) _let_2))))))))))))))))))))) (= (exists ((V2792l_27_2E0 u) (V2793e1_2E0 u) (V2794e2_2E0 u) (V2795e3_2E0 u) (V2796e4_2E0 u) (V2797e5_2E0 u) (V2798e6_2E0 u) (V2799e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2792l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2793e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2794e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2795e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2796e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2797e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2798e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2799e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_55 _let_3)) (= (exists ((V2776l_27_2E0 u) (V2777e1_2E0 u) (V2778e2_2E0 u) (V2779e3_2E0 u) (V2780e4_2E0 u) (V2781e5_2E0 u) (V2782e6_2E0 u) (V2783e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2776l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2777e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2778e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2779e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2780e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2781e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2782e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2783e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_56)) (= (exists ((V2768l_27_2E0 u) (V2769e1_2E0 u) (V2770e2_2E0 u) (V2771e3_2E0 u) (V2772e4_2E0 u) (V2773e5_2E0 u) (V2774e6_2E0 u) (V2775e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2768l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2769e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2770e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2771e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2772e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2773e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2774e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2775e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_56) _let_3)) (= (_let_10 _let_55) (exists ((V2760l_27_2E0 u) (V2761e1_2E0 u) (V2762e2_2E0 u) (V2763e3_2E0 u) (V2764e4_2E0 u) (V2765e5_2E0 u) (V2766e6_2E0 u) (V2767e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2760l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2761e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2762e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2763e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2764e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2765e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2766e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2767e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_10 _let_54) (exists ((V2744l_27_2E0 u) (V2745e1_2E0 u) (V2746e2_2E0 u) (V2747e3_2E0 u) (V2748e4_2E0 u) (V2749e5_2E0 u) (V2750e6_2E0 u) (V2751e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2745e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2746e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2747e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2748e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2749e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2750e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2751e7_2E0)) (_let_1 V2744l_27_2E0)))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_54) _let_3) (exists ((V2736l_27_2E0 u) (V2737e1_2E0 u) (V2738e2_2E0 u) (V2739e3_2E0 u) (V2740e4_2E0 u) (V2741e5_2E0 u) (V2742e6_2E0 u) (V2743e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2737e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2738e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2739e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2740e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2741e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2742e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2743e7_2E0)) (_let_1 V2736l_27_2E0)))))))))))))))))))) (= (= _let_54 _let_3) (exists ((V2713e1_2E0 u) (V2714e2_2E0 u) (V2715e3_2E0 u) (V2716e4_2E0 u) (V2717e5_2E0 u) (V2718e6_2E0 u) (V2719e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2713e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2714e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2715e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2716e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2717e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2718e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2719e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (exists ((V2706e1_2E0 u) (V2707e2_2E0 u) (V2708e3_2E0 u) (V2709e4_2E0 u) (V2710e5_2E0 u) (V2711e6_2E0 u) (V2712e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2706e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2707e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2708e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2709e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2710e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2711e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2712e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) (= _let_3 _let_54)) (= (= _let_3 _let_53) (exists ((V2670l_27_2E0 u) (V2671e1_2E0 u) (V2672e2_2E0 u) (V2673e3_2E0 u) (V2674e4_2E0 u) (V2675e5_2E0 u) (V2676e6_2E0 u) (V2677e7_2E0 u) (V2678e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2670l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2671e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2672e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2673e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2674e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2675e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2676e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2677e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2678e8_2E0)) _let_2))))))))))))))))))))))) (= (_let_10 _let_53) (exists ((V2643l_27_2E0 u) (V2644e1_2E0 u) (V2645e2_2E0 u) (V2646e3_2E0 u) (V2647e4_2E0 u) (V2648e5_2E0 u) (V2649e6_2E0 u) (V2650e7_2E0 u) (V2651e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2643l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2644e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2645e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2646e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2647e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2648e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2649e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2650e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2651e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V2590e1_2E0 u) (V2591e2_2E0 u) (V2592e3_2E0 u) (V2593e4_2E0 u) (V2594e5_2E0 u) (V2595e6_2E0 u) (V2596e7_2E0 u) (V2597e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2590e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2591e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2592e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2593e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2594e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2595e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2596e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2597e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_50 _let_3)) (= (exists ((V2582e1_2E0 u) (V2583e2_2E0 u) (V2584e3_2E0 u) (V2585e4_2E0 u) (V2586e5_2E0 u) (V2587e6_2E0 u) (V2588e7_2E0 u) (V2589e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2582e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2583e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2584e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2585e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2586e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2587e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2588e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2589e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_3 _let_50)) (= (exists ((V2572l_27_2E0 u) (V2573e1_2E0 u) (V2574e2_2E0 u) (V2575e3_2E0 u) (V2576e4_2E0 u) (V2577e5_2E0 u) (V2578e6_2E0 u) (V2579e7_2E0 u) (V2580e8_2E0 u) (V2581e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2572l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2573e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2574e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2575e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2576e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2577e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2578e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2579e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2580e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2581e9_2E0)) _let_2)))))))))))))))))))))))) (= _let_52 _let_3)) (= (= _let_3 _let_52) (exists ((V2562l_27_2E0 u) (V2563e1_2E0 u) (V2564e2_2E0 u) (V2565e3_2E0 u) (V2566e4_2E0 u) (V2567e5_2E0 u) (V2568e6_2E0 u) (V2569e7_2E0 u) (V2570e8_2E0 u) (V2571e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2562l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2563e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2564e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2565e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2566e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2567e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2568e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2569e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2570e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2571e9_2E0)) _let_2))))))))))))))))))))))))) (= (= _let_51 _let_3) (exists ((V2552l_27_2E0 u) (V2553e1_2E0 u) (V2554e2_2E0 u) (V2555e3_2E0 u) (V2556e4_2E0 u) (V2557e5_2E0 u) (V2558e6_2E0 u) (V2559e7_2E0 u) (V2560e8_2E0 u) (V2561e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2552l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2553e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2554e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2555e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2556e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2557e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2558e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2559e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2560e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2561e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_10 _let_52) (exists ((V2532l_27_2E0 u) (V2533e1_2E0 u) (V2534e2_2E0 u) (V2535e3_2E0 u) (V2536e4_2E0 u) (V2537e5_2E0 u) (V2538e6_2E0 u) (V2539e7_2E0 u) (V2540e8_2E0 u) (V2541e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2532l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2533e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2534e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2535e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2536e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2537e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2538e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2539e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2540e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2541e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_10 _let_51) (exists ((V2512l_27_2E0 u) (V2513e1_2E0 u) (V2514e2_2E0 u) (V2515e3_2E0 u) (V2516e4_2E0 u) (V2517e5_2E0 u) (V2518e6_2E0 u) (V2519e7_2E0 u) (V2520e8_2E0 u) (V2521e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2512l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2513e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2514e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2515e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2516e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2517e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2518e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2519e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2520e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2521e9_2E0)) _let_2))))))))))))))))))))))))) (= (exists ((V2462l_27_2E0 u) (V2463e1_2E0 u) (V2464e2_2E0 u) (V2465e3_2E0 u) (V2466e4_2E0 u) (V2467e5_2E0 u) (V2468e6_2E0 u) (V2469e7_2E0 u) (V2470e8_2E0 u) (V2471e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2463e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2464e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2465e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2466e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2467e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2468e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2469e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2470e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2471e9_2E0)) (_let_1 V2462l_27_2E0))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_50) _let_3)) (= (= _let_47 _let_3) (exists ((V2453e1_2E0 u) (V2454e2_2E0 u) (V2455e3_2E0 u) (V2456e4_2E0 u) (V2457e5_2E0 u) (V2458e6_2E0 u) (V2459e7_2E0 u) (V2460e8_2E0 u) (V2461e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2453e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2454e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2455e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2456e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2457e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2458e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2459e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2460e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2461e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))) (= (= _let_3 _let_49) (exists ((V2422l_27_2E0 u) (V2423e1_2E0 u) (V2424e2_2E0 u) (V2425e3_2E0 u) (V2426e4_2E0 u) (V2427e5_2E0 u) (V2428e6_2E0 u) (V2429e7_2E0 u) (V2430e8_2E0 u) (V2431e9_2E0 u) (V2432e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2422l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2423e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2424e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2425e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2426e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2427e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2428e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2429e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2430e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2431e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2432e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2411l_27_2E0 u) (V2412e1_2E0 u) (V2413e2_2E0 u) (V2414e3_2E0 u) (V2415e4_2E0 u) (V2416e5_2E0 u) (V2417e6_2E0 u) (V2418e7_2E0 u) (V2419e8_2E0 u) (V2420e9_2E0 u) (V2421e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2411l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2412e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2413e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2414e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2415e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2416e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2417e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2418e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2419e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2420e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2421e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_48 _let_3)) (= (exists ((V2389l_27_2E0 u) (V2390e1_2E0 u) (V2391e2_2E0 u) (V2392e3_2E0 u) (V2393e4_2E0 u) (V2394e5_2E0 u) (V2395e6_2E0 u) (V2396e7_2E0 u) (V2397e8_2E0 u) (V2398e9_2E0 u) (V2399e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2389l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2390e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2391e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2392e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2393e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2394e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2395e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2396e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2397e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2398e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2399e10_2E0)) _let_2)))))))))))))))))))))))))) (_let_10 _let_49)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_49) _let_3) (exists ((V2378l_27_2E0 u) (V2379e1_2E0 u) (V2380e2_2E0 u) (V2381e3_2E0 u) (V2382e4_2E0 u) (V2383e5_2E0 u) (V2384e6_2E0 u) (V2385e7_2E0 u) (V2386e8_2E0 u) (V2387e9_2E0 u) (V2388e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2378l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2379e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2380e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2381e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2382e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2383e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2384e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2385e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2386e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2387e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2388e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_10 _let_48) (exists ((V2367l_27_2E0 u) (V2368e1_2E0 u) (V2369e2_2E0 u) (V2370e3_2E0 u) (V2371e4_2E0 u) (V2372e5_2E0 u) (V2373e6_2E0 u) (V2374e7_2E0 u) (V2375e8_2E0 u) (V2376e9_2E0 u) (V2377e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2367l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2368e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2369e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2370e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2371e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2372e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2373e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2374e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2375e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2376e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2377e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V2356l_27_2E0 u) (V2357e1_2E0 u) (V2358e2_2E0 u) (V2359e3_2E0 u) (V2360e4_2E0 u) (V2361e5_2E0 u) (V2362e6_2E0 u) (V2363e7_2E0 u) (V2364e8_2E0 u) (V2365e9_2E0 u) (V2366e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2356l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2357e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2358e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2359e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2360e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2361e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2362e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2363e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2364e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2365e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2366e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_48) _let_3)) (= (_let_10 _let_44) (exists ((V2345l_27_2E0 u) (V2346e1_2E0 u) (V2347e2_2E0 u) (V2348e3_2E0 u) (V2349e4_2E0 u) (V2350e5_2E0 u) (V2351e6_2E0 u) (V2352e7_2E0 u) (V2353e8_2E0 u) (V2354e9_2E0 u) (V2355e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2346e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2347e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2348e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2349e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2350e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2351e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2352e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2353e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2354e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2355e10_2E0)) (_let_1 V2345l_27_2E0)))))))))))))))))))))))))) (= (_let_8 _let_47) (exists ((V2323l_27_2E0 u) (V2324e1_2E0 u) (V2325e2_2E0 u) (V2326e3_2E0 u) (V2327e4_2E0 u) (V2328e5_2E0 u) (V2329e6_2E0 u) (V2330e7_2E0 u) (V2331e8_2E0 u) (V2332e9_2E0 u) (V2333e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2324e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2325e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2326e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2327e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2328e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2329e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2330e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2331e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2332e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2333e10_2E0)) (_let_1 V2323l_27_2E0)))))))))))))))))))))))))) (= (exists ((V2256l_27_2E0 u) (V2257e1_2E0 u) (V2258e2_2E0 u) (V2259e3_2E0 u) (V2260e4_2E0 u) (V2261e5_2E0 u) (V2262e6_2E0 u) (V2263e7_2E0 u) (V2264e8_2E0 u) (V2265e9_2E0 u) (V2266e10_2E0 u) (V2267e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2256l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2257e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2258e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2259e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2260e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2261e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2262e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2263e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2264e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2265e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2266e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2267e11_2E0)) _let_2)))))))))))))))))))))))))))) (= _let_46 _let_3)) (= (exists ((V2244l_27_2E0 u) (V2245e1_2E0 u) (V2246e2_2E0 u) (V2247e3_2E0 u) (V2248e4_2E0 u) (V2249e5_2E0 u) (V2250e6_2E0 u) (V2251e7_2E0 u) (V2252e8_2E0 u) (V2253e9_2E0 u) (V2254e10_2E0 u) (V2255e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2244l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2245e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2246e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2247e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2248e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2249e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2250e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2251e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2252e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2253e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2254e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2255e11_2E0)) _let_2)))))))))))))))))))))))))))) (= _let_3 _let_46)) (= (exists ((V2232l_27_2E0 u) (V2233e1_2E0 u) (V2234e2_2E0 u) (V2235e3_2E0 u) (V2236e4_2E0 u) (V2237e5_2E0 u) (V2238e6_2E0 u) (V2239e7_2E0 u) (V2240e8_2E0 u) (V2241e9_2E0 u) (V2242e10_2E0 u) (V2243e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2232l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2233e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2234e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2235e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2236e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2237e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2238e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2239e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2240e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2241e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2242e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2243e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_45)) (= (exists ((V2220l_27_2E0 u) (V2221e1_2E0 u) (V2222e2_2E0 u) (V2223e3_2E0 u) (V2224e4_2E0 u) (V2225e5_2E0 u) (V2226e6_2E0 u) (V2227e7_2E0 u) (V2228e8_2E0 u) (V2229e9_2E0 u) (V2230e10_2E0 u) (V2231e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2220l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2221e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2222e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2223e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2224e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2225e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2226e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2227e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2228e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2229e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2230e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2231e11_2E0)) _let_2)))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_45) _let_3)) (= (_let_10 _let_41) (exists ((V2184l_27_2E0 u) (V2185e1_2E0 u) (V2186e2_2E0 u) (V2187e3_2E0 u) (V2188e4_2E0 u) (V2189e5_2E0 u) (V2190e6_2E0 u) (V2191e7_2E0 u) (V2192e8_2E0 u) (V2193e9_2E0 u) (V2194e10_2E0 u) (V2195e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2185e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2186e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2187e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2188e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2189e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2190e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2191e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2192e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2193e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2194e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2195e11_2E0)) (_let_1 V2184l_27_2E0)))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_41) _let_3) (exists ((V2172l_27_2E0 u) (V2173e1_2E0 u) (V2174e2_2E0 u) (V2175e3_2E0 u) (V2176e4_2E0 u) (V2177e5_2E0 u) (V2178e6_2E0 u) (V2179e7_2E0 u) (V2180e8_2E0 u) (V2181e9_2E0 u) (V2182e10_2E0 u) (V2183e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2173e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2174e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2175e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2176e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2177e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2178e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2179e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2180e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2181e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2182e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2183e11_2E0)) (_let_1 V2172l_27_2E0)))))))))))))))))))))))))))) (= (exists ((V2148l_27_2E0 u) (V2149e1_2E0 u) (V2150e2_2E0 u) (V2151e3_2E0 u) (V2152e4_2E0 u) (V2153e5_2E0 u) (V2154e6_2E0 u) (V2155e7_2E0 u) (V2156e8_2E0 u) (V2157e9_2E0 u) (V2158e10_2E0 u) (V2159e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2149e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2150e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2151e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2152e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2153e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2154e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2155e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2156e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2157e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2158e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2159e11_2E0)) (_let_1 V2148l_27_2E0))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_44) _let_3)) (= (= _let_41 _let_3) (exists ((V2137e1_2E0 u) (V2138e2_2E0 u) (V2139e3_2E0 u) (V2140e4_2E0 u) (V2141e5_2E0 u) (V2142e6_2E0 u) (V2143e7_2E0 u) (V2144e8_2E0 u) (V2145e9_2E0 u) (V2146e10_2E0 u) (V2147e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2137e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2138e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2139e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2140e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2141e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2142e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2143e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2144e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2145e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2146e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2147e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))) (= (exists ((V2113l_27_2E0 u) (V2114e1_2E0 u) (V2115e2_2E0 u) (V2116e3_2E0 u) (V2117e4_2E0 u) (V2118e5_2E0 u) (V2119e6_2E0 u) (V2120e7_2E0 u) (V2121e8_2E0 u) (V2122e9_2E0 u) (V2123e10_2E0 u) (V2124e11_2E0 u) (V2125e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2113l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2114e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2115e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2116e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2117e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2118e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2119e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2120e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2121e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2122e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2123e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2124e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2125e12_2E0)) _let_2)))))))))))))))))))))))))))))) (= _let_43 _let_3)) (= (= _let_42 _let_3) (exists ((V2087l_27_2E0 u) (V2088e1_2E0 u) (V2089e2_2E0 u) (V2090e3_2E0 u) (V2091e4_2E0 u) (V2092e5_2E0 u) (V2093e6_2E0 u) (V2094e7_2E0 u) (V2095e8_2E0 u) (V2096e9_2E0 u) (V2097e10_2E0 u) (V2098e11_2E0 u) (V2099e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2087l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2088e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2089e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2090e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2091e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2092e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2093e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2094e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2095e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2096e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2097e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2098e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2099e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_42) (exists ((V2074l_27_2E0 u) (V2075e1_2E0 u) (V2076e2_2E0 u) (V2077e3_2E0 u) (V2078e4_2E0 u) (V2079e5_2E0 u) (V2080e6_2E0 u) (V2081e7_2E0 u) (V2082e8_2E0 u) (V2083e9_2E0 u) (V2084e10_2E0 u) (V2085e11_2E0 u) (V2086e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2074l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2075e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2076e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2077e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2078e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2079e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2080e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2081e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2082e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2083e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2084e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2085e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2086e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (exists ((V2061l_27_2E0 u) (V2062e1_2E0 u) (V2063e2_2E0 u) (V2064e3_2E0 u) (V2065e4_2E0 u) (V2066e5_2E0 u) (V2067e6_2E0 u) (V2068e7_2E0 u) (V2069e8_2E0 u) (V2070e9_2E0 u) (V2071e10_2E0 u) (V2072e11_2E0 u) (V2073e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2061l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2062e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2063e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2064e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2065e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2066e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2067e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2068e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2069e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2070e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2071e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2072e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2073e12_2E0)) _let_2)))))))))))))))))))))))))))))) (_let_10 _let_43)) (= (_let_10 _let_42) (exists ((V2035l_27_2E0 u) (V2036e1_2E0 u) (V2037e2_2E0 u) (V2038e3_2E0 u) (V2039e4_2E0 u) (V2040e5_2E0 u) (V2041e6_2E0 u) (V2042e7_2E0 u) (V2043e8_2E0 u) (V2044e9_2E0 u) (V2045e10_2E0 u) (V2046e11_2E0 u) (V2047e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2035l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2036e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2037e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2038e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2039e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2040e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2041e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2042e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2043e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2044e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2045e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2046e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2047e12_2E0)) _let_2))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1996l_27_2E0 u) (V1997e1_2E0 u) (V1998e2_2E0 u) (V1999e3_2E0 u) (V2000e4_2E0 u) (V2001e5_2E0 u) (V2002e6_2E0 u) (V2003e7_2E0 u) (V2004e8_2E0 u) (V2005e9_2E0 u) (V2006e10_2E0 u) (V2007e11_2E0 u) (V2008e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1997e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1998e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1999e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2000e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2001e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2002e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2003e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2004e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2005e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2006e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2007e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2008e12_2E0)) (_let_1 V1996l_27_2E0))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_38) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_41) _let_3) (exists ((V1970l_27_2E0 u) (V1971e1_2E0 u) (V1972e2_2E0 u) (V1973e3_2E0 u) (V1974e4_2E0 u) (V1975e5_2E0 u) (V1976e6_2E0 u) (V1977e7_2E0 u) (V1978e8_2E0 u) (V1979e9_2E0 u) (V1980e10_2E0 u) (V1981e11_2E0 u) (V1982e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1971e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1972e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1973e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1974e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1975e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1976e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1977e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1978e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1979e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1980e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1981e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1982e12_2E0)) (_let_1 V1970l_27_2E0)))))))))))))))))))))))))))))) (= (= _let_38 _let_3) (exists ((V1958e1_2E0 u) (V1959e2_2E0 u) (V1960e3_2E0 u) (V1961e4_2E0 u) (V1962e5_2E0 u) (V1963e6_2E0 u) (V1964e7_2E0 u) (V1965e8_2E0 u) (V1966e9_2E0 u) (V1967e10_2E0 u) (V1968e11_2E0 u) (V1969e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1958e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1959e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1960e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1961e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1962e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1963e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1964e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1965e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1966e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1967e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1968e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1969e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))) (= (exists ((V1946e1_2E0 u) (V1947e2_2E0 u) (V1948e3_2E0 u) (V1949e4_2E0 u) (V1950e5_2E0 u) (V1951e6_2E0 u) (V1952e7_2E0 u) (V1953e8_2E0 u) (V1954e9_2E0 u) (V1955e10_2E0 u) (V1956e11_2E0 u) (V1957e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1946e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1947e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1948e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1949e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1950e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1951e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1952e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1953e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1954e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1955e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1956e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1957e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))) (= _let_3 _let_38)) (= (= _let_40 _let_3) (exists ((V1932l_27_2E0 u) (V1933e1_2E0 u) (V1934e2_2E0 u) (V1935e3_2E0 u) (V1936e4_2E0 u) (V1937e5_2E0 u) (V1938e6_2E0 u) (V1939e7_2E0 u) (V1940e8_2E0 u) (V1941e9_2E0 u) (V1942e10_2E0 u) (V1943e11_2E0 u) (V1944e12_2E0 u) (V1945e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1932l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1933e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1934e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1935e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1936e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1937e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1938e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1939e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1940e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1941e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1942e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1943e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1944e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1945e13_2E0)) _let_2))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_39 _let_3) (exists ((V1904l_27_2E0 u) (V1905e1_2E0 u) (V1906e2_2E0 u) (V1907e3_2E0 u) (V1908e4_2E0 u) (V1909e5_2E0 u) (V1910e6_2E0 u) (V1911e7_2E0 u) (V1912e8_2E0 u) (V1913e9_2E0 u) (V1914e10_2E0 u) (V1915e11_2E0 u) (V1916e12_2E0 u) (V1917e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1904l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1905e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1906e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1907e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1908e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1909e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1910e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1911e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1912e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1913e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1914e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1915e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1916e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1917e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (= _let_3 _let_39) (exists ((V1890l_27_2E0 u) (V1891e1_2E0 u) (V1892e2_2E0 u) (V1893e3_2E0 u) (V1894e4_2E0 u) (V1895e5_2E0 u) (V1896e6_2E0 u) (V1897e7_2E0 u) (V1898e8_2E0 u) (V1899e9_2E0 u) (V1900e10_2E0 u) (V1901e11_2E0 u) (V1902e12_2E0 u) (V1903e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1890l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1891e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1892e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1893e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1894e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1895e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1896e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1897e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1898e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1899e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1900e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1901e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1902e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1903e13_2E0)) _let_2))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_40) _let_3) (exists ((V1862l_27_2E0 u) (V1863e1_2E0 u) (V1864e2_2E0 u) (V1865e3_2E0 u) (V1866e4_2E0 u) (V1867e5_2E0 u) (V1868e6_2E0 u) (V1869e7_2E0 u) (V1870e8_2E0 u) (V1871e9_2E0 u) (V1872e10_2E0 u) (V1873e11_2E0 u) (V1874e12_2E0 u) (V1875e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1862l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1863e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1864e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1865e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1866e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1867e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1868e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1869e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1870e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1871e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1872e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1873e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1874e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1875e13_2E0)) _let_2))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_10 _let_39) (exists ((V1848l_27_2E0 u) (V1849e1_2E0 u) (V1850e2_2E0 u) (V1851e3_2E0 u) (V1852e4_2E0 u) (V1853e5_2E0 u) (V1854e6_2E0 u) (V1855e7_2E0 u) (V1856e8_2E0 u) (V1857e9_2E0 u) (V1858e10_2E0 u) (V1859e11_2E0 u) (V1860e12_2E0 u) (V1861e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1848l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1849e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1850e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1851e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1852e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1853e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1854e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1855e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1856e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1857e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1858e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1859e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1860e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1861e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_39) _let_3) (exists ((V1834l_27_2E0 u) (V1835e1_2E0 u) (V1836e2_2E0 u) (V1837e3_2E0 u) (V1838e4_2E0 u) (V1839e5_2E0 u) (V1840e6_2E0 u) (V1841e7_2E0 u) (V1842e8_2E0 u) (V1843e9_2E0 u) (V1844e10_2E0 u) (V1845e11_2E0 u) (V1846e12_2E0 u) (V1847e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1834l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1835e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1836e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1837e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1838e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1839e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1840e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1841e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1842e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1843e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1844e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1845e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1846e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1847e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_34) _let_3) (exists ((V1806l_27_2E0 u) (V1807e1_2E0 u) (V1808e2_2E0 u) (V1809e3_2E0 u) (V1810e4_2E0 u) (V1811e5_2E0 u) (V1812e6_2E0 u) (V1813e7_2E0 u) (V1814e8_2E0 u) (V1815e9_2E0 u) (V1816e10_2E0 u) (V1817e11_2E0 u) (V1818e12_2E0 u) (V1819e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1807e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1808e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1809e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1810e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1811e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1812e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1813e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1814e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1815e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1816e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1817e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1818e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1819e13_2E0)) (_let_1 V1806l_27_2E0)))))))))))))))))))))))))))))))) (= (exists ((V1778l_27_2E0 u) (V1779e1_2E0 u) (V1780e2_2E0 u) (V1781e3_2E0 u) (V1782e4_2E0 u) (V1783e5_2E0 u) (V1784e6_2E0 u) (V1785e7_2E0 u) (V1786e8_2E0 u) (V1787e9_2E0 u) (V1788e10_2E0 u) (V1789e11_2E0 u) (V1790e12_2E0 u) (V1791e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1779e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1780e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1781e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1782e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1783e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1784e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1785e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1786e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1787e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1788e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1789e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1790e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1791e13_2E0)) (_let_1 V1778l_27_2E0))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_38) _let_3)) (= (exists ((V1737l_27_2E0 u) (V1738e1_2E0 u) (V1739e2_2E0 u) (V1740e3_2E0 u) (V1741e4_2E0 u) (V1742e5_2E0 u) (V1743e6_2E0 u) (V1744e7_2E0 u) (V1745e8_2E0 u) (V1746e9_2E0 u) (V1747e10_2E0 u) (V1748e11_2E0 u) (V1749e12_2E0 u) (V1750e13_2E0 u) (V1751e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1737l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1738e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1739e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1740e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1741e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1742e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1743e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1744e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1745e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1746e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1747e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1748e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1749e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1750e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1751e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) (= _let_36 _let_3)) (= (exists ((V1722l_27_2E0 u) (V1723e1_2E0 u) (V1724e2_2E0 u) (V1725e3_2E0 u) (V1726e4_2E0 u) (V1727e5_2E0 u) (V1728e6_2E0 u) (V1729e7_2E0 u) (V1730e8_2E0 u) (V1731e9_2E0 u) (V1732e10_2E0 u) (V1733e11_2E0 u) (V1734e12_2E0 u) (V1735e13_2E0 u) (V1736e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1722l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1723e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1724e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1725e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1726e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1727e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1728e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1729e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1730e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1731e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1732e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1733e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1734e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1735e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1736e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_36)) (= (= _let_35 _let_3) (exists ((V1707l_27_2E0 u) (V1708e1_2E0 u) (V1709e2_2E0 u) (V1710e3_2E0 u) (V1711e4_2E0 u) (V1712e5_2E0 u) (V1713e6_2E0 u) (V1714e7_2E0 u) (V1715e8_2E0 u) (V1716e9_2E0 u) (V1717e10_2E0 u) (V1718e11_2E0 u) (V1719e12_2E0 u) (V1720e13_2E0 u) (V1721e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1707l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1708e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1709e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1710e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1711e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1712e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1713e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1714e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1715e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1716e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1717e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1718e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1719e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1720e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1721e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1677l_27_2E0 u) (V1678e1_2E0 u) (V1679e2_2E0 u) (V1680e3_2E0 u) (V1681e4_2E0 u) (V1682e5_2E0 u) (V1683e6_2E0 u) (V1684e7_2E0 u) (V1685e8_2E0 u) (V1686e9_2E0 u) (V1687e10_2E0 u) (V1688e11_2E0 u) (V1689e12_2E0 u) (V1690e13_2E0 u) (V1691e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1677l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1678e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1679e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1680e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1681e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1682e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1683e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1684e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1685e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1686e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1687e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1688e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1689e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1690e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1691e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) (_let_10 _let_36)) (= (_let_10 _let_35) (exists ((V1647l_27_2E0 u) (V1648e1_2E0 u) (V1649e2_2E0 u) (V1650e3_2E0 u) (V1651e4_2E0 u) (V1652e5_2E0 u) (V1653e6_2E0 u) (V1654e7_2E0 u) (V1655e8_2E0 u) (V1656e9_2E0 u) (V1657e10_2E0 u) (V1658e11_2E0 u) (V1659e12_2E0 u) (V1660e13_2E0 u) (V1661e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1647l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1648e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1649e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1650e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1651e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1652e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1653e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1654e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1655e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1656e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1657e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1658e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1659e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1660e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1661e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1632l_27_2E0 u) (V1633e1_2E0 u) (V1634e2_2E0 u) (V1635e3_2E0 u) (V1636e4_2E0 u) (V1637e5_2E0 u) (V1638e6_2E0 u) (V1639e7_2E0 u) (V1640e8_2E0 u) (V1641e9_2E0 u) (V1642e10_2E0 u) (V1643e11_2E0 u) (V1644e12_2E0 u) (V1645e13_2E0 u) (V1646e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1632l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1633e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1634e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1635e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1636e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1637e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1638e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1639e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1640e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1641e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1642e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1643e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1644e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1645e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1646e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_35) _let_3)) (= (exists ((V1587l_27_2E0 u) (V1588e1_2E0 u) (V1589e2_2E0 u) (V1590e3_2E0 u) (V1591e4_2E0 u) (V1592e5_2E0 u) (V1593e6_2E0 u) (V1594e7_2E0 u) (V1595e8_2E0 u) (V1596e9_2E0 u) (V1597e10_2E0 u) (V1598e11_2E0 u) (V1599e12_2E0 u) (V1600e13_2E0 u) (V1601e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1588e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1589e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1590e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1591e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1592e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1593e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1594e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1595e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1596e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1597e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1598e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1599e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1600e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1601e14_2E0)) (_let_1 V1587l_27_2E0))))))))))))))))))))))))))))))))) (_let_8 _let_34)) (= (exists ((V1558e1_2E0 u) (V1559e2_2E0 u) (V1560e3_2E0 u) (V1561e4_2E0 u) (V1562e5_2E0 u) (V1563e6_2E0 u) (V1564e7_2E0 u) (V1565e8_2E0 u) (V1566e9_2E0 u) (V1567e10_2E0 u) (V1568e11_2E0 u) (V1569e12_2E0 u) (V1570e13_2E0 u) (V1571e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1558e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1559e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1560e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1561e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1562e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1563e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1564e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1565e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1566e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1567e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1568e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1569e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1570e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1571e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))) (= _let_31 _let_3)) (= (= _let_3 _let_31) (exists ((V1544e1_2E0 u) (V1545e2_2E0 u) (V1546e3_2E0 u) (V1547e4_2E0 u) (V1548e5_2E0 u) (V1549e6_2E0 u) (V1550e7_2E0 u) (V1551e8_2E0 u) (V1552e9_2E0 u) (V1553e10_2E0 u) (V1554e11_2E0 u) (V1555e12_2E0 u) (V1556e13_2E0 u) (V1557e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1544e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1545e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1546e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1547e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1548e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1549e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1550e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1551e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1552e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1553e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1554e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1555e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1556e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1557e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))) (= (= _let_3 _let_33) (exists ((V1512l_27_2E0 u) (V1513e1_2E0 u) (V1514e2_2E0 u) (V1515e3_2E0 u) (V1516e4_2E0 u) (V1517e5_2E0 u) (V1518e6_2E0 u) (V1519e7_2E0 u) (V1520e8_2E0 u) (V1521e9_2E0 u) (V1522e10_2E0 u) (V1523e11_2E0 u) (V1524e12_2E0 u) (V1525e13_2E0 u) (V1526e14_2E0 u) (V1527e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1512l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1513e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1514e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1515e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1516e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1517e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1518e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1519e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1520e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1521e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1522e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1523e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1524e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1525e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1526e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1527e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_32 _let_3) (exists ((V1496l_27_2E0 u) (V1497e1_2E0 u) (V1498e2_2E0 u) (V1499e3_2E0 u) (V1500e4_2E0 u) (V1501e5_2E0 u) (V1502e6_2E0 u) (V1503e7_2E0 u) (V1504e8_2E0 u) (V1505e9_2E0 u) (V1506e10_2E0 u) (V1507e11_2E0 u) (V1508e12_2E0 u) (V1509e13_2E0 u) (V1510e14_2E0 u) (V1511e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1496l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1497e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1498e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1499e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1500e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1501e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1502e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1503e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1504e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1505e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1506e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1507e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1508e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1509e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1510e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1511e15_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (exists ((V1480l_27_2E0 u) (V1481e1_2E0 u) (V1482e2_2E0 u) (V1483e3_2E0 u) (V1484e4_2E0 u) (V1485e5_2E0 u) (V1486e6_2E0 u) (V1487e7_2E0 u) (V1488e8_2E0 u) (V1489e9_2E0 u) (V1490e10_2E0 u) (V1491e11_2E0 u) (V1492e12_2E0 u) (V1493e13_2E0 u) (V1494e14_2E0 u) (V1495e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1480l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1481e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1482e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1483e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1484e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1485e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1486e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1487e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1488e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1489e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1490e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1491e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1492e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1493e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1494e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1495e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) (= _let_3 _let_32)) (= (_let_10 _let_33) (exists ((V1464l_27_2E0 u) (V1465e1_2E0 u) (V1466e2_2E0 u) (V1467e3_2E0 u) (V1468e4_2E0 u) (V1469e5_2E0 u) (V1470e6_2E0 u) (V1471e7_2E0 u) (V1472e8_2E0 u) (V1473e9_2E0 u) (V1474e10_2E0 u) (V1475e11_2E0 u) (V1476e12_2E0 u) (V1477e13_2E0 u) (V1478e14_2E0 u) (V1479e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1464l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1465e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1466e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1467e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1468e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1469e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1470e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1471e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1472e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1473e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1474e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1475e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1476e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1477e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1478e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1479e15_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (exists ((V1432l_27_2E0 u) (V1433e1_2E0 u) (V1434e2_2E0 u) (V1435e3_2E0 u) (V1436e4_2E0 u) (V1437e5_2E0 u) (V1438e6_2E0 u) (V1439e7_2E0 u) (V1440e8_2E0 u) (V1441e9_2E0 u) (V1442e10_2E0 u) (V1443e11_2E0 u) (V1444e12_2E0 u) (V1445e13_2E0 u) (V1446e14_2E0 u) (V1447e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1432l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1433e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1434e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1435e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1436e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1437e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1438e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1439e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1440e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1441e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1442e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1443e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1444e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1445e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1446e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1447e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_32)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_32) _let_3) (exists ((V1416l_27_2E0 u) (V1417e1_2E0 u) (V1418e2_2E0 u) (V1419e3_2E0 u) (V1420e4_2E0 u) (V1421e5_2E0 u) (V1422e6_2E0 u) (V1423e7_2E0 u) (V1424e8_2E0 u) (V1425e9_2E0 u) (V1426e10_2E0 u) (V1427e11_2E0 u) (V1428e12_2E0 u) (V1429e13_2E0 u) (V1430e14_2E0 u) (V1431e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1416l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1417e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1418e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1419e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1420e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1421e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1422e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1423e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1424e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1425e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1426e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1427e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1428e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1429e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1430e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1431e15_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (_let_10 _let_28) (exists ((V1400l_27_2E0 u) (V1401e1_2E0 u) (V1402e2_2E0 u) (V1403e3_2E0 u) (V1404e4_2E0 u) (V1405e5_2E0 u) (V1406e6_2E0 u) (V1407e7_2E0 u) (V1408e8_2E0 u) (V1409e9_2E0 u) (V1410e10_2E0 u) (V1411e11_2E0 u) (V1412e12_2E0 u) (V1413e13_2E0 u) (V1414e14_2E0 u) (V1415e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1401e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1402e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1403e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1404e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1405e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1406e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1407e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1408e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1409e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1410e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1411e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1412e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1413e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1414e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1415e15_2E0)) (_let_1 V1400l_27_2E0)))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_31) _let_3) (exists ((V1352l_27_2E0 u) (V1353e1_2E0 u) (V1354e2_2E0 u) (V1355e3_2E0 u) (V1356e4_2E0 u) (V1357e5_2E0 u) (V1358e6_2E0 u) (V1359e7_2E0 u) (V1360e8_2E0 u) (V1361e9_2E0 u) (V1362e10_2E0 u) (V1363e11_2E0 u) (V1364e12_2E0 u) (V1365e13_2E0 u) (V1366e14_2E0 u) (V1367e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1353e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1354e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1355e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1356e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1357e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1358e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1359e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1360e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1361e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1362e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1363e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1364e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1365e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1366e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1367e15_2E0)) (_let_1 V1352l_27_2E0)))))))))))))))))))))))))))))))))))) (= (= _let_28 _let_3) (exists ((V1337e1_2E0 u) (V1338e2_2E0 u) (V1339e3_2E0 u) (V1340e4_2E0 u) (V1341e5_2E0 u) (V1342e6_2E0 u) (V1343e7_2E0 u) (V1344e8_2E0 u) (V1345e9_2E0 u) (V1346e10_2E0 u) (V1347e11_2E0 u) (V1348e12_2E0 u) (V1349e13_2E0 u) (V1350e14_2E0 u) (V1351e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1337e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1338e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1339e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1340e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1341e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1342e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1343e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1344e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1345e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1346e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1347e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1348e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1349e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1350e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1351e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))) (= (exists ((V1305l_27_2E0 u) (V1306e1_2E0 u) (V1307e2_2E0 u) (V1308e3_2E0 u) (V1309e4_2E0 u) (V1310e5_2E0 u) (V1311e6_2E0 u) (V1312e7_2E0 u) (V1313e8_2E0 u) (V1314e9_2E0 u) (V1315e10_2E0 u) (V1316e11_2E0 u) (V1317e12_2E0 u) (V1318e13_2E0 u) (V1319e14_2E0 u) (V1320e15_2E0 u) (V1321e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1305l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1306e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1307e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1308e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1309e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1310e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1311e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1312e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1313e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1314e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1315e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1316e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1317e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1318e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1319e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1320e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1321e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_27 _let_3)) (= (exists ((V1288l_27_2E0 u) (V1289e1_2E0 u) (V1290e2_2E0 u) (V1291e3_2E0 u) (V1292e4_2E0 u) (V1293e5_2E0 u) (V1294e6_2E0 u) (V1295e7_2E0 u) (V1296e8_2E0 u) (V1297e9_2E0 u) (V1298e10_2E0 u) (V1299e11_2E0 u) (V1300e12_2E0 u) (V1301e13_2E0 u) (V1302e14_2E0 u) (V1303e15_2E0 u) (V1304e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1288l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1289e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1290e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1291e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1292e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1293e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1294e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1295e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1296e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1297e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1298e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1299e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1300e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1301e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1302e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1303e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1304e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_27)) (= (exists ((V1271l_27_2E0 u) (V1272e1_2E0 u) (V1273e2_2E0 u) (V1274e3_2E0 u) (V1275e4_2E0 u) (V1276e5_2E0 u) (V1277e6_2E0 u) (V1278e7_2E0 u) (V1279e8_2E0 u) (V1280e9_2E0 u) (V1281e10_2E0 u) (V1282e11_2E0 u) (V1283e12_2E0 u) (V1284e13_2E0 u) (V1285e14_2E0 u) (V1286e15_2E0 u) (V1287e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1271l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1272e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1273e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1274e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1275e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1276e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1277e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1278e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1279e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1280e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1281e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1282e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1283e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1284e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1285e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1286e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1287e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_26 _let_3)) (= (exists ((V1186l_27_2E0 u) (V1187e1_2E0 u) (V1188e2_2E0 u) (V1189e3_2E0 u) (V1190e4_2E0 u) (V1191e5_2E0 u) (V1192e6_2E0 u) (V1193e7_2E0 u) (V1194e8_2E0 u) (V1195e9_2E0 u) (V1196e10_2E0 u) (V1197e11_2E0 u) (V1198e12_2E0 u) (V1199e13_2E0 u) (V1200e14_2E0 u) (V1201e15_2E0 u) (V1202e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1186l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1187e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1188e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1189e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1190e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1191e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1192e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1193e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1194e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1195e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1196e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1197e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1198e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1199e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1200e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1201e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1202e16_2E0)) _let_2))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_26) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_25) _let_3) (exists ((V1152l_27_2E0 u) (V1153e1_2E0 u) (V1154e2_2E0 u) (V1155e3_2E0 u) (V1156e4_2E0 u) (V1157e5_2E0 u) (V1158e6_2E0 u) (V1159e7_2E0 u) (V1160e8_2E0 u) (V1161e9_2E0 u) (V1162e10_2E0 u) (V1163e11_2E0 u) (V1164e12_2E0 u) (V1165e13_2E0 u) (V1166e14_2E0 u) (V1167e15_2E0 u) (V1168e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1153e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1154e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1155e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1156e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1157e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1158e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1159e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1160e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1161e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1162e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1163e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1164e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1165e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1166e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1167e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1168e16_2E0)) (_let_1 V1152l_27_2E0)))))))))))))))))))))))))))))))))))))) (= (exists ((V1102e1_2E0 u) (V1103e2_2E0 u) (V1104e3_2E0 u) (V1105e4_2E0 u) (V1106e5_2E0 u) (V1107e6_2E0 u) (V1108e7_2E0 u) (V1109e8_2E0 u) (V1110e9_2E0 u) (V1111e10_2E0 u) (V1112e11_2E0 u) (V1113e12_2E0 u) (V1114e13_2E0 u) (V1115e14_2E0 u) (V1116e15_2E0 u) (V1117e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1102e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1103e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1104e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1105e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1106e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1107e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1108e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1109e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1110e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1111e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1112e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1113e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1114e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1115e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1116e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1117e16_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))) (= _let_25 _let_3)) (= (exists ((V1068l_27_2E0 u) (V1069e1_2E0 u) (V1070e2_2E0 u) (V1071e3_2E0 u) (V1072e4_2E0 u) (V1073e5_2E0 u) (V1074e6_2E0 u) (V1075e7_2E0 u) (V1076e8_2E0 u) (V1077e9_2E0 u) (V1078e10_2E0 u) (V1079e11_2E0 u) (V1080e12_2E0 u) (V1081e13_2E0 u) (V1082e14_2E0 u) (V1083e15_2E0 u) (V1084e16_2E0 u) (V1085e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1068l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1069e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1070e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1071e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1072e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1073e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1074e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1075e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1076e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1077e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1078e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1079e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1080e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1081e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1082e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1083e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1084e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1085e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_23 _let_3)) (= (= _let_3 _let_23) (exists ((V1050l_27_2E0 u) (V1051e1_2E0 u) (V1052e2_2E0 u) (V1053e3_2E0 u) (V1054e4_2E0 u) (V1055e5_2E0 u) (V1056e6_2E0 u) (V1057e7_2E0 u) (V1058e8_2E0 u) (V1059e9_2E0 u) (V1060e10_2E0 u) (V1061e11_2E0 u) (V1062e12_2E0 u) (V1063e13_2E0 u) (V1064e14_2E0 u) (V1065e15_2E0 u) (V1066e16_2E0 u) (V1067e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1050l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1051e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1052e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1053e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1054e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1055e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1056e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1057e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1058e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1059e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1060e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1061e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1062e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1063e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1064e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1065e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1066e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1067e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (= _let_22 _let_3) (exists ((V1032l_27_2E0 u) (V1033e1_2E0 u) (V1034e2_2E0 u) (V1035e3_2E0 u) (V1036e4_2E0 u) (V1037e5_2E0 u) (V1038e6_2E0 u) (V1039e7_2E0 u) (V1040e8_2E0 u) (V1041e9_2E0 u) (V1042e10_2E0 u) (V1043e11_2E0 u) (V1044e12_2E0 u) (V1045e13_2E0 u) (V1046e14_2E0 u) (V1047e15_2E0 u) (V1048e16_2E0 u) (V1049e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1032l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1033e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1034e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1035e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1036e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1037e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1038e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1039e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1040e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1041e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1042e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1043e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1044e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1045e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1046e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1047e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1048e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1049e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (= _let_3 _let_22) (exists ((V1014l_27_2E0 u) (V1015e1_2E0 u) (V1016e2_2E0 u) (V1017e3_2E0 u) (V1018e4_2E0 u) (V1019e5_2E0 u) (V1020e6_2E0 u) (V1021e7_2E0 u) (V1022e8_2E0 u) (V1023e9_2E0 u) (V1024e10_2E0 u) (V1025e11_2E0 u) (V1026e12_2E0 u) (V1027e13_2E0 u) (V1028e14_2E0 u) (V1029e15_2E0 u) (V1030e16_2E0 u) (V1031e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1014l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1015e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1016e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1017e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1018e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1019e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1020e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1021e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1022e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1023e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1024e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1025e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1026e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1027e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1028e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1029e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1030e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1031e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_3) (exists ((V942l_27_2E0 u) (V943e1_2E0 u) (V944e2_2E0 u) (V945e3_2E0 u) (V946e4_2E0 u) (V947e5_2E0 u) (V948e6_2E0 u) (V949e7_2E0 u) (V950e8_2E0 u) (V951e9_2E0 u) (V952e10_2E0 u) (V953e11_2E0 u) (V954e12_2E0 u) (V955e13_2E0 u) (V956e14_2E0 u) (V957e15_2E0 u) (V958e16_2E0 u) (V959e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V942l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V943e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V944e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V945e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V946e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V947e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V948e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V949e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V950e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V951e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V952e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V953e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V954e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V955e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V956e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V957e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V958e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V959e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (_let_10 _let_19) (exists ((V924l_27_2E0 u) (V925e1_2E0 u) (V926e2_2E0 u) (V927e3_2E0 u) (V928e4_2E0 u) (V929e5_2E0 u) (V930e6_2E0 u) (V931e7_2E0 u) (V932e8_2E0 u) (V933e9_2E0 u) (V934e10_2E0 u) (V935e11_2E0 u) (V936e12_2E0 u) (V937e13_2E0 u) (V938e14_2E0 u) (V939e15_2E0 u) (V940e16_2E0 u) (V941e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V925e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V926e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V927e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V928e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V929e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V930e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V931e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V932e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V933e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V934e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V935e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V936e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V937e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V938e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V939e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V940e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V941e17_2E0)) (_let_1 V924l_27_2E0)))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_19) _let_3) (exists ((V906l_27_2E0 u) (V907e1_2E0 u) (V908e2_2E0 u) (V909e3_2E0 u) (V910e4_2E0 u) (V911e5_2E0 u) (V912e6_2E0 u) (V913e7_2E0 u) (V914e8_2E0 u) (V915e9_2E0 u) (V916e10_2E0 u) (V917e11_2E0 u) (V918e12_2E0 u) (V919e13_2E0 u) (V920e14_2E0 u) (V921e15_2E0 u) (V922e16_2E0 u) (V923e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V907e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V908e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V909e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V910e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V911e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V912e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V913e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V914e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V915e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V916e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V917e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V918e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V919e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V920e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V921e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V922e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V923e17_2E0)) (_let_1 V906l_27_2E0)))))))))))))))))))))))))))))))))))))))) (= (= _let_19 _let_3) (exists ((V853e1_2E0 u) (V854e2_2E0 u) (V855e3_2E0 u) (V856e4_2E0 u) (V857e5_2E0 u) (V858e6_2E0 u) (V859e7_2E0 u) (V860e8_2E0 u) (V861e9_2E0 u) (V862e10_2E0 u) (V863e11_2E0 u) (V864e12_2E0 u) (V865e13_2E0 u) (V866e14_2E0 u) (V867e15_2E0 u) (V868e16_2E0 u) (V869e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V853e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V854e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V855e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V856e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V857e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V858e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V859e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V860e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V861e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V862e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V863e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V864e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V865e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V866e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V867e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V868e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V869e17_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))) (= (exists ((V779l_27_2E0 u) (V780e1_2E0 u) (V781e2_2E0 u) (V782e3_2E0 u) (V783e4_2E0 u) (V784e5_2E0 u) (V785e6_2E0 u) (V786e7_2E0 u) (V787e8_2E0 u) (V788e9_2E0 u) (V789e10_2E0 u) (V790e11_2E0 u) (V791e12_2E0 u) (V792e13_2E0 u) (V793e14_2E0 u) (V794e15_2E0 u) (V795e16_2E0 u) (V796e17_2E0 u) (V797e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V779l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V780e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V781e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V782e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V783e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V784e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V785e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V786e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V787e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V788e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V789e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V790e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V791e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V792e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V793e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V794e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V795e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V796e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V797e18_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))) (= _let_20 _let_3)) (= (= _let_3 _let_20) (exists ((V760l_27_2E0 u) (V761e1_2E0 u) (V762e2_2E0 u) (V763e3_2E0 u) (V764e4_2E0 u) (V765e5_2E0 u) (V766e6_2E0 u) (V767e7_2E0 u) (V768e8_2E0 u) (V769e9_2E0 u) (V770e10_2E0 u) (V771e11_2E0 u) (V772e12_2E0 u) (V773e13_2E0 u) (V774e14_2E0 u) (V775e15_2E0 u) (V776e16_2E0 u) (V777e17_2E0 u) (V778e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V760l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V761e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V762e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V763e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V764e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V765e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V766e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V767e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V768e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V769e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V770e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V771e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V772e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V773e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V774e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V775e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V776e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V777e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V778e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V741l_27_2E0 u) (V742e1_2E0 u) (V743e2_2E0 u) (V744e3_2E0 u) (V745e4_2E0 u) (V746e5_2E0 u) (V747e6_2E0 u) (V748e7_2E0 u) (V749e8_2E0 u) (V750e9_2E0 u) (V751e10_2E0 u) (V752e11_2E0 u) (V753e12_2E0 u) (V754e13_2E0 u) (V755e14_2E0 u) (V756e15_2E0 u) (V757e16_2E0 u) (V758e17_2E0 u) (V759e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V741l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V742e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V743e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V744e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V745e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V746e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V747e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V748e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V749e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V750e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V751e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V752e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V753e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V754e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V755e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V756e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V757e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V758e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V759e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_21)) (= (exists ((V703l_27_2E0 u) (V704e1_2E0 u) (V705e2_2E0 u) (V706e3_2E0 u) (V707e4_2E0 u) (V708e5_2E0 u) (V709e6_2E0 u) (V710e7_2E0 u) (V711e8_2E0 u) (V712e9_2E0 u) (V713e10_2E0 u) (V714e11_2E0 u) (V715e12_2E0 u) (V716e13_2E0 u) (V717e14_2E0 u) (V718e15_2E0 u) (V719e16_2E0 u) (V720e17_2E0 u) (V721e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V703l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V704e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V705e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V706e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V707e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V708e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V709e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V710e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V711e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V712e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V713e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V714e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V715e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V716e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V717e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V718e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V719e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V720e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V721e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_20)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_3) (exists ((V684l_27_2E0 u) (V685e1_2E0 u) (V686e2_2E0 u) (V687e3_2E0 u) (V688e4_2E0 u) (V689e5_2E0 u) (V690e6_2E0 u) (V691e7_2E0 u) (V692e8_2E0 u) (V693e9_2E0 u) (V694e10_2E0 u) (V695e11_2E0 u) (V696e12_2E0 u) (V697e13_2E0 u) (V698e14_2E0 u) (V699e15_2E0 u) (V700e16_2E0 u) (V701e17_2E0 u) (V702e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V684l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V685e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V686e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V687e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V688e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V689e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V690e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V691e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V692e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V693e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V694e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V695e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V696e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V697e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V698e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V699e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V700e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V701e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V702e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_3) (exists ((V646l_27_2E0 u) (V647e1_2E0 u) (V648e2_2E0 u) (V649e3_2E0 u) (V650e4_2E0 u) (V651e5_2E0 u) (V652e6_2E0 u) (V653e7_2E0 u) (V654e8_2E0 u) (V655e9_2E0 u) (V656e10_2E0 u) (V657e11_2E0 u) (V658e12_2E0 u) (V659e13_2E0 u) (V660e14_2E0 u) (V661e15_2E0 u) (V662e16_2E0 u) (V663e17_2E0 u) (V664e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V647e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V648e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V649e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V650e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V651e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V652e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V653e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V654e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V655e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V656e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V657e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V658e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V659e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V660e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V661e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V662e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V663e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V664e18_2E0)) (_let_1 V646l_27_2E0)))))))))))))))))))))))))))))))))))))))))) (= (exists ((V627l_27_2E0 u) (V628e1_2E0 u) (V629e2_2E0 u) (V630e3_2E0 u) (V631e4_2E0 u) (V632e5_2E0 u) (V633e6_2E0 u) (V634e7_2E0 u) (V635e8_2E0 u) (V636e9_2E0 u) (V637e10_2E0 u) (V638e11_2E0 u) (V639e12_2E0 u) (V640e13_2E0 u) (V641e14_2E0 u) (V642e15_2E0 u) (V643e16_2E0 u) (V644e17_2E0 u) (V645e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V628e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V629e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V630e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V631e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V632e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V633e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V634e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V635e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V636e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V637e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V638e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V639e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V640e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V641e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V642e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V643e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V644e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V645e18_2E0)) (_let_1 V627l_27_2E0))))))))))))))))))))))))))))))))))))))))) (_let_8 _let_19)) (= (= _let_3 _let_16) (exists ((V572e1_2E0 u) (V573e2_2E0 u) (V574e3_2E0 u) (V575e4_2E0 u) (V576e5_2E0 u) (V577e6_2E0 u) (V578e7_2E0 u) (V579e8_2E0 u) (V580e9_2E0 u) (V581e10_2E0 u) (V582e11_2E0 u) (V583e12_2E0 u) (V584e13_2E0 u) (V585e14_2E0 u) (V586e15_2E0 u) (V587e16_2E0 u) (V588e17_2E0 u) (V589e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V572e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V573e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V574e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V575e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V576e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V577e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V578e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V579e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V580e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V581e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V582e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V583e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V584e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V585e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V586e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V587e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V588e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V589e18_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))) (= (= _let_3 _let_17) (exists ((V532l_27_2E0 u) (V533e1_2E0 u) (V534e2_2E0 u) (V535e3_2E0 u) (V536e4_2E0 u) (V537e5_2E0 u) (V538e6_2E0 u) (V539e7_2E0 u) (V540e8_2E0 u) (V541e9_2E0 u) (V542e10_2E0 u) (V543e11_2E0 u) (V544e12_2E0 u) (V545e13_2E0 u) (V546e14_2E0 u) (V547e15_2E0 u) (V548e16_2E0 u) (V549e17_2E0 u) (V550e18_2E0 u) (V551e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V532l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V533e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V534e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V535e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V536e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V537e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V538e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V539e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V540e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V541e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V542e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V543e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V544e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V545e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V546e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V547e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V548e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V549e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V550e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V551e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) (= (= _let_18 _let_3) (exists ((V512l_27_2E0 u) (V513e1_2E0 u) (V514e2_2E0 u) (V515e3_2E0 u) (V516e4_2E0 u) (V517e5_2E0 u) (V518e6_2E0 u) (V519e7_2E0 u) (V520e8_2E0 u) (V521e9_2E0 u) (V522e10_2E0 u) (V523e11_2E0 u) (V524e12_2E0 u) (V525e13_2E0 u) (V526e14_2E0 u) (V527e15_2E0 u) (V528e16_2E0 u) (V529e17_2E0 u) (V530e18_2E0 u) (V531e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V512l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V513e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V514e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V515e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V516e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V517e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V518e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V519e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V520e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V521e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V522e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V523e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V524e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V525e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V526e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V527e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V528e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V529e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V530e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V531e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_18) (exists ((V492l_27_2E0 u) (V493e1_2E0 u) (V494e2_2E0 u) (V495e3_2E0 u) (V496e4_2E0 u) (V497e5_2E0 u) (V498e6_2E0 u) (V499e7_2E0 u) (V500e8_2E0 u) (V501e9_2E0 u) (V502e10_2E0 u) (V503e11_2E0 u) (V504e12_2E0 u) (V505e13_2E0 u) (V506e14_2E0 u) (V507e15_2E0 u) (V508e16_2E0 u) (V509e17_2E0 u) (V510e18_2E0 u) (V511e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V492l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V493e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V494e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V495e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V496e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V497e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V498e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V499e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V500e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V501e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V502e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V503e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V504e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V505e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V506e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V507e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V508e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V509e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V510e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V511e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_3) (exists ((V452l_27_2E0 u) (V453e1_2E0 u) (V454e2_2E0 u) (V455e3_2E0 u) (V456e4_2E0 u) (V457e5_2E0 u) (V458e6_2E0 u) (V459e7_2E0 u) (V460e8_2E0 u) (V461e9_2E0 u) (V462e10_2E0 u) (V463e11_2E0 u) (V464e12_2E0 u) (V465e13_2E0 u) (V466e14_2E0 u) (V467e15_2E0 u) (V468e16_2E0 u) (V469e17_2E0 u) (V470e18_2E0 u) (V471e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V452l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V453e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V454e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V455e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V456e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V457e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V458e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V459e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V460e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V461e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V462e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V463e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V464e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V465e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V466e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V467e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V468e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V469e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V470e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V471e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V392l_27_2E0 u) (V393e1_2E0 u) (V394e2_2E0 u) (V395e3_2E0 u) (V396e4_2E0 u) (V397e5_2E0 u) (V398e6_2E0 u) (V399e7_2E0 u) (V400e8_2E0 u) (V401e9_2E0 u) (V402e10_2E0 u) (V403e11_2E0 u) (V404e12_2E0 u) (V405e13_2E0 u) (V406e14_2E0 u) (V407e15_2E0 u) (V408e16_2E0 u) (V409e17_2E0 u) (V410e18_2E0 u) (V411e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V393e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V394e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V395e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V396e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V397e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V398e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V399e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V400e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V401e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V402e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V403e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V404e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V405e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V406e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V407e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V408e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V409e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V410e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V411e19_2E0)) (_let_1 V392l_27_2E0))))))))))))))))))))))))))))))))))))))))))) (_let_10 _let_7)) (= (exists ((V372l_27_2E0 u) (V373e1_2E0 u) (V374e2_2E0 u) (V375e3_2E0 u) (V376e4_2E0 u) (V377e5_2E0 u) (V378e6_2E0 u) (V379e7_2E0 u) (V380e8_2E0 u) (V381e9_2E0 u) (V382e10_2E0 u) (V383e11_2E0 u) (V384e12_2E0 u) (V385e13_2E0 u) (V386e14_2E0 u) (V387e15_2E0 u) (V388e16_2E0 u) (V389e17_2E0 u) (V390e18_2E0 u) (V391e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V373e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V374e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V375e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V376e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V377e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V378e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V379e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V380e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V381e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V382e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V383e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V384e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V385e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V386e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V387e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V388e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V389e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V390e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V391e19_2E0)) (_let_1 V372l_27_2E0))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_7) _let_3)) (= (_let_8 _let_16) (exists ((V352l_27_2E0 u) (V353e1_2E0 u) (V354e2_2E0 u) (V355e3_2E0 u) (V356e4_2E0 u) (V357e5_2E0 u) (V358e6_2E0 u) (V359e7_2E0 u) (V360e8_2E0 u) (V361e9_2E0 u) (V362e10_2E0 u) (V363e11_2E0 u) (V364e12_2E0 u) (V365e13_2E0 u) (V366e14_2E0 u) (V367e15_2E0 u) (V368e16_2E0 u) (V369e17_2E0 u) (V370e18_2E0 u) (V371e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V353e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V354e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V355e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V356e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V357e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V358e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V359e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V360e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V361e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V362e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V363e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V364e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V365e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V366e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V367e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V368e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V369e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V370e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V371e19_2E0)) (_let_1 V352l_27_2E0)))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V294e1_2E0 u) (V295e2_2E0 u) (V296e3_2E0 u) (V297e4_2E0 u) (V298e5_2E0 u) (V299e6_2E0 u) (V300e7_2E0 u) (V301e8_2E0 u) (V302e9_2E0 u) (V303e10_2E0 u) (V304e11_2E0 u) (V305e12_2E0 u) (V306e13_2E0 u) (V307e14_2E0 u) (V308e15_2E0 u) (V309e16_2E0 u) (V310e17_2E0 u) (V311e18_2E0 u) (V312e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V294e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V295e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V296e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V297e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V298e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V299e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V300e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V301e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V302e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V303e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V304e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V305e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V306e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V307e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V308e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V309e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V310e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V311e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V312e19_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_7)) (= (exists ((V273l_27_2E0 u) (V274e1_2E0 u) (V275e2_2E0 u) (V276e3_2E0 u) (V277e4_2E0 u) (V278e5_2E0 u) (V279e6_2E0 u) (V280e7_2E0 u) (V281e8_2E0 u) (V282e9_2E0 u) (V283e10_2E0 u) (V284e11_2E0 u) (V285e12_2E0 u) (V286e13_2E0 u) (V287e14_2E0 u) (V288e15_2E0 u) (V289e16_2E0 u) (V290e17_2E0 u) (V291e18_2E0 u) (V292e19_2E0 u) (V293e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V273l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V274e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V275e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V276e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V277e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V278e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V279e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V280e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V281e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V282e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V283e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V284e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V285e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V286e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V287e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V288e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V289e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V290e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V291e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V292e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V293e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_12 _let_3)) (= (= _let_3 _let_13) (exists ((V210l_27_2E0 u) (V211e1_2E0 u) (V212e2_2E0 u) (V213e3_2E0 u) (V214e4_2E0 u) (V215e5_2E0 u) (V216e6_2E0 u) (V217e7_2E0 u) (V218e8_2E0 u) (V219e9_2E0 u) (V220e10_2E0 u) (V221e11_2E0 u) (V222e12_2E0 u) (V223e13_2E0 u) (V224e14_2E0 u) (V225e15_2E0 u) (V226e16_2E0 u) (V227e17_2E0 u) (V228e18_2E0 u) (V229e19_2E0 u) (V230e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V210l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V211e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V212e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V213e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V214e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V215e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V216e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V217e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V218e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V219e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V220e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V221e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V222e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V223e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V224e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V225e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V226e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V227e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V228e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V229e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V230e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_3) (exists ((V168l_27_2E0 u) (V169e1_2E0 u) (V170e2_2E0 u) (V171e3_2E0 u) (V172e4_2E0 u) (V173e5_2E0 u) (V174e6_2E0 u) (V175e7_2E0 u) (V176e8_2E0 u) (V177e9_2E0 u) (V178e10_2E0 u) (V179e11_2E0 u) (V180e12_2E0 u) (V181e13_2E0 u) (V182e14_2E0 u) (V183e15_2E0 u) (V184e16_2E0 u) (V185e17_2E0 u) (V186e18_2E0 u) (V187e19_2E0 u) (V188e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V168l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V169e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V170e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V171e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V172e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V173e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V174e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V175e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V176e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V177e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V178e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V179e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V180e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V181e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V182e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V183e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V184e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V185e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V186e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V187e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V188e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V105l_27_2E0 u) (V106e1_2E0 u) (V107e2_2E0 u) (V108e3_2E0 u) (V109e4_2E0 u) (V110e5_2E0 u) (V111e6_2E0 u) (V112e7_2E0 u) (V113e8_2E0 u) (V114e9_2E0 u) (V115e10_2E0 u) (V116e11_2E0 u) (V117e12_2E0 u) (V118e13_2E0 u) (V119e14_2E0 u) (V120e15_2E0 u) (V121e16_2E0 u) (V122e17_2E0 u) (V123e18_2E0 u) (V124e19_2E0 u) (V125e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V106e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V107e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V108e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V109e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V110e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V111e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V112e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V113e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V114e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V115e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V116e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V117e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V118e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V119e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V120e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V121e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V122e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V123e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V124e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V125e20_2E0)) (_let_1 V105l_27_2E0))))))))))))))))))))))))))))))))))))))))))))) (_let_10 _let_9)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_9) _let_3) (exists ((V84l_27_2E0 u) (V85e1_2E0 u) (V86e2_2E0 u) (V87e3_2E0 u) (V88e4_2E0 u) (V89e5_2E0 u) (V90e6_2E0 u) (V91e7_2E0 u) (V92e8_2E0 u) (V93e9_2E0 u) (V94e10_2E0 u) (V95e11_2E0 u) (V96e12_2E0 u) (V97e13_2E0 u) (V98e14_2E0 u) (V99e15_2E0 u) (V100e16_2E0 u) (V101e17_2E0 u) (V102e18_2E0 u) (V103e19_2E0 u) (V104e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V85e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V86e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V87e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V88e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V89e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V90e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V91e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V92e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V93e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V94e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V95e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V96e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V97e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V98e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V99e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V100e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V101e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V102e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V103e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V104e20_2E0)) (_let_1 V84l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V63l_27_2E0 u) (V64e1_2E0 u) (V65e2_2E0 u) (V66e3_2E0 u) (V67e4_2E0 u) (V68e5_2E0 u) (V69e6_2E0 u) (V70e7_2E0 u) (V71e8_2E0 u) (V72e9_2E0 u) (V73e10_2E0 u) (V74e11_2E0 u) (V75e12_2E0 u) (V76e13_2E0 u) (V77e14_2E0 u) (V78e15_2E0 u) (V79e16_2E0 u) (V80e17_2E0 u) (V81e18_2E0 u) (V82e19_2E0 u) (V83e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V64e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V65e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V66e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V67e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V68e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V69e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V70e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V71e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V72e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V73e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V74e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V75e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V76e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V77e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V78e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V79e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V80e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V81e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V82e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V83e20_2E0)) (_let_1 V63l_27_2E0))))))))))))))))))))))))))))))))))))))))))))) (_let_8 _let_7)) (= (exists ((V42l_27_2E0 u) (V43e1_2E0 u) (V44e2_2E0 u) (V45e3_2E0 u) (V46e4_2E0 u) (V47e5_2E0 u) (V48e6_2E0 u) (V49e7_2E0 u) (V50e8_2E0 u) (V51e9_2E0 u) (V52e10_2E0 u) (V53e11_2E0 u) (V54e12_2E0 u) (V55e13_2E0 u) (V56e14_2E0 u) (V57e15_2E0 u) (V58e16_2E0 u) (V59e17_2E0 u) (V60e18_2E0 u) (V61e19_2E0 u) (V62e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V43e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V44e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V45e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V46e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V47e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V48e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V49e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V50e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V51e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V52e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V53e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V54e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V55e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V56e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V57e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V58e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V59e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V60e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V61e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V62e20_2E0)) (_let_1 V42l_27_2E0))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_7) _let_3)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27c d) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F1_2E0 u) (F9_2E0 u) (F8_2E0 u) (F11_2E0 u) (F10_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V20x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V21y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V20x_2E0)))) ((s A_27a) V21y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F7_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V20x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V15x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F5_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V15x_2E0)))) (exists ((V16y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V15x_2E0)))) ((s A_27a) V16y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F3_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V10x_2E0)))) (exists ((V11y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V10x_2E0)))) ((s A_27a) V11y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V5x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V7y_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V9x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F9_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V2y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((s A_27c) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F8_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V17y_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 ((s A_27c) V19x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F11_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V12y_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 ((s A_27c) V14x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F10_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0i_2E0 u) (V17y_2E0 u) (V18xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F6_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V18xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V12y_2E0 u) (V13xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F4_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V13xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V7y_2E0 u) (V8xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F2_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V8xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V2y_2E0 u) (V3xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V3xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_3) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 ((s (_let_1 A_27c)) V0i_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (and (=> (forall ((V12y_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F4_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F10_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F5_2E0)) _let_4)))))) (=> (forall ((V17y_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F6_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F11_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F7_2E0)) _let_4)))))) (=> (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F2_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F9_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F3_2E0)) _let_4)))))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F8_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F1_2E0)) _let_4)))))))))))))))))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1e_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1e_2E0)) (_let_1 V0l_2E0))))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 (_let_2 V2y_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (c_2Elist_2EFRONT_2E1 _let_3))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V4f_2E0 u) (V2t1_2E0 u) (V3t2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3t2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 ((s _let_4) V4f_2E0))) (let ((_let_6 (app_2E2 _let_5))) (let ((_let_7 (s A_27c))) (let ((_let_8 (_let_1 V2t1_2E0))) (let ((_let_9 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_10)) F0_2E0)) _let_5))) _let_8))) _let_2))) (= (_let_7 (_let_6 _let_8)) (_let_7 (_let_6 _let_2))))))))))))))) (=> (forall ((V2t1_2E0 u) (V3t2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3t2_2E0))) (let ((_let_3 (_let_1 V2t1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2t1_2E0 u) (V3t2_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3t2_2E0))) (let ((_let_3 (_let_1 V2t1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (s A_27a))) (let ((_let_11 ((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_10 V0v_2E0)) (_let_10 V1i_2E0)))) (let ((_let_12 (_let_4 A_27c))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_12) _let_6)) F0_2E0)) ((s _let_12) V4f_2E0)))) _let_3))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F1_2E0)) _let_3))) _let_2)))))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) (_let_1 ((c_2Elist_2ESNOC_2E2 (_let_4 V1x_2E0)) _let_2)))) (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0y_27_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3X_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0y_27_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2x_2E0))) (let ((_let_5 (c_2Epair_2E_2C_2E2 _let_4))) (let ((_let_6 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_7 (_let_1 V1y_2E0))) (let ((_let_8 (= _let_7 _let_2))) (let ((_let_9 (s ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_10 (_let_6 V3X_2E0))) (let ((_let_11 (_let_3 (c_2Epair_2EFST_2E1 _let_10)))) (let ((_let_12 (_let_1 (c_2Epair_2ESND_2E1 _let_10)))) (let ((_let_13 (_let_6 (_let_5 _let_12)))) (let ((_let_14 (_let_6 ((c_2Epair_2E_2C_2E2 _let_11) _let_7)))) (and (= (= _let_7 _let_12) (= _let_14 _let_10)) (= (= _let_13 _let_10) (= _let_4 _let_11)) (= (= _let_12 _let_7) (= _let_10 _let_14)) (= (= _let_10 _let_13) (= _let_11 _let_4)) (= _let_8 (= (_let_9 ((c_2Epair_2E_2C_2E2 _let_7) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_2) _let_4)))) (= _let_8 (= (_let_6 (_let_5 _let_7)) (_let_6 (_let_5 _let_2)))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 A_27a)) (_let_4 _let_1)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ecombin_2Eo_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Ecombin_2Eo_2E0)) _let_3)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0)))) (exists ((V4v2_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V4v2_2E0)))))))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (s A_27a))) (=> (forall ((V3v2_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V3v2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_3 V0v_2E0)) (_let_3 V1i_2E0)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0))))))))))))) (forall ((A_27a d)) (and (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 _let_2))) (= (_let_1 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) (c_2Ewellorder_2Ewellorder__ABS_2E1 _let_2)))) _let_2))))) (forall ((V0a_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Ewellorder_2Ewellorder__ABS_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))) _let_2)))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> Bool Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 _let_5))) (let ((_let_7 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_6)))) (let ((_let_8 (mono_2Ec_2Earithmetic_2EBIT1 _let_5))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_8)))) (let ((_let_10 ((mono_2Ec_2Earithmetic_2E_2B _let_7) V0x))) (let ((_let_11 (mono_2Ec_2Earithmetic_2E_3E_3D _let_3))) (let ((_let_12 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_13 (_let_12 _let_7))) (let ((_let_14 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_8)))) (let ((_let_15 ((mono_2Ec_2Earithmetic_2E_2B _let_9) V0x))) (let ((_let_16 (_let_12 _let_9))) (let ((_let_17 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_18 (mono_2Ec_2Earithmetic_2EBIT2 _let_17))) (let ((_let_19 (mono_2Ec_2Earithmetic_2EBIT2 _let_18))) (let ((_let_20 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_19)))) (let ((_let_21 (mono_2Ec_2Earithmetic_2E_3E _let_3))) (let ((_let_22 ((mono_2Ec_2Earithmetic_2E_2B _let_14) V0x))) (let ((_let_23 (_let_12 _let_14))) (let ((_let_24 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_19)))) (let ((_let_25 ((mono_2Ec_2Earithmetic_2E_2B _let_20) V0x))) (let ((_let_26 (_let_12 _let_20))) (let ((_let_27 ((mono_2Ec_2Earithmetic_2E_2B _let_24) V0x))) (let ((_let_28 (_let_12 _let_24))) (let ((_let_29 (mono_2Ec_2Earithmetic_2EBIT1 _let_18))) (let ((_let_30 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_29)))) (let ((_let_31 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_29)))) (let ((_let_32 ((mono_2Ec_2Earithmetic_2E_2B _let_31) V0x))) (let ((_let_33 (_let_12 _let_31))) (let ((_let_34 (mono_2Ec_2Earithmetic_2EBIT1 _let_17))) (let ((_let_35 (mono_2Ec_2Earithmetic_2EBIT2 _let_34))) (let ((_let_36 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_35)))) (let ((_let_37 ((mono_2Ec_2Earithmetic_2E_2B _let_30) V0x))) (let ((_let_38 (_let_12 _let_30))) (let ((_let_39 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_35)))) (let ((_let_40 ((mono_2Ec_2Earithmetic_2E_2B _let_36) V0x))) (let ((_let_41 (_let_12 _let_36))) (let ((_let_42 (mono_2Ec_2Earithmetic_2EBIT1 _let_34))) (let ((_let_43 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_42)))) (let ((_let_44 ((mono_2Ec_2Earithmetic_2E_2B _let_39) V0x))) (let ((_let_45 (_let_12 _let_39))) (let ((_let_46 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_42)))) (let ((_let_47 (_let_12 _let_43))) (let ((_let_48 ((mono_2Ec_2Earithmetic_2E_2B _let_43) V0x))) (let ((_let_49 (mono_2Ec_2Earithmetic_2EBIT2 _let_4))) (let ((_let_50 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_49)))) (let ((_let_51 (_let_12 _let_46))) (let ((_let_52 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_49)))) (let ((_let_53 ((mono_2Ec_2Earithmetic_2E_2B _let_50) V0x))) (let ((_let_54 (_let_12 _let_50))) (let ((_let_55 (mono_2Ec_2Earithmetic_2ENUMERAL _let_6))) (let ((_let_56 ((mono_2Ec_2Earithmetic_2E_2B _let_52) V0x))) (let ((_let_57 (_let_12 _let_52))) (let ((_let_58 (mono_2Ec_2Earithmetic_2ENUMERAL _let_8))) (let ((_let_59 ((mono_2Ec_2Earithmetic_2E_2B _let_55) V0x))) (let ((_let_60 (_let_12 _let_55))) (let ((_let_61 (mono_2Ec_2Earithmetic_2ENUMERAL _let_19))) (let ((_let_62 ((mono_2Ec_2Earithmetic_2E_2B _let_58) V0x))) (let ((_let_63 (_let_12 _let_58))) (let ((_let_64 (_let_12 _let_61))) (let ((_let_65 ((mono_2Ec_2Earithmetic_2E_2B _let_61) V0x))) (let ((_let_66 (mono_2Ec_2Earithmetic_2ENUMERAL _let_35))) (let ((_let_67 (mono_2Ec_2Earithmetic_2ENUMERAL _let_29))) (let ((_let_68 (_let_12 _let_67))) (let ((_let_69 ((mono_2Ec_2Earithmetic_2E_2B _let_67) V0x))) (let ((_let_70 ((mono_2Ec_2Earithmetic_2E_2B _let_66) V0x))) (let ((_let_71 (_let_12 _let_66))) (let ((_let_72 (mono_2Ec_2Earithmetic_2ENUMERAL _let_49))) (let ((_let_73 (mono_2Ec_2Earithmetic_2ENUMERAL _let_42))) (let ((_let_74 ((mono_2Ec_2Earithmetic_2E_2B _let_73) V0x))) (let ((_let_75 (_let_12 _let_73))) (let ((_let_76 (mono_2Ec_2Earithmetic_2ENUMERAL _let_5))) (let ((_let_77 ((mono_2Ec_2Earithmetic_2E_2B _let_72) V0x))) (let ((_let_78 (_let_12 _let_72))) (let ((_let_79 (mono_2Ec_2Earithmetic_2ENUMERAL _let_18))) (let ((_let_80 ((mono_2Ec_2Earithmetic_2E_2B _let_76) V0x))) (let ((_let_81 (_let_12 _let_76))) (let ((_let_82 (mono_2Ec_2Earithmetic_2ENUMERAL _let_34))) (let ((_let_83 ((mono_2Ec_2Earithmetic_2E_2B _let_79) V0x))) (let ((_let_84 ((mono_2Ec_2Earithmetic_2E_2B _let_82) V0x))) (let ((_let_85 (_let_12 _let_82))) (let ((_let_86 (mono_2Ec_2Earithmetic_2ENUMERAL _let_4))) (let ((_let_87 (mono_2Ec_2Earithmetic_2ENUMERAL _let_17))) (let ((_let_88 ((mono_2Ec_2Earithmetic_2E_2B _let_86) V0x))) (let ((_let_89 (_let_12 _let_86))) (let ((_let_90 ((mono_2Ec_2Earithmetic_2E_2B _let_87) V0x))) (let ((_let_91 (_let_12 _let_87))) (let ((_let_92 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_93 (_let_12 _let_79))) (let ((_let_94 ((mono_2Ec_2Earithmetic_2E_2B _let_46) V0x))) (and (= (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u) (V7e6_2E0 u) (V8e7_2E0 u) (V9e8_2E0 u) (V10e9_2E0 u) (V11e10_2E0 u) (V12e11_2E0 u) (V13e12_2E0 u) (V14e13_2E0 u) (V15e14_2E0 u) (V16e15_2E0 u) (V17e16_2E0 u) (V18e17_2E0 u) (V19e18_2E0 u) (V20e19_2E0 u) (V21e20_2E0 u) (V22e21_2E0 u) (V23e22_2E0 u) (V24e23_2E0 u) (V25e24_2E0 u) (V26e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V24e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e25_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_7)) (= (_let_21 _let_9) (exists ((V78l_27_2E0 u) (V79e1_2E0 u) (V80e2_2E0 u) (V81e3_2E0 u) (V82e4_2E0 u) (V83e5_2E0 u) (V84e6_2E0 u) (V85e7_2E0 u) (V86e8_2E0 u) (V87e9_2E0 u) (V88e10_2E0 u) (V89e11_2E0 u) (V90e12_2E0 u) (V91e13_2E0 u) (V92e14_2E0 u) (V93e15_2E0 u) (V94e16_2E0 u) (V95e17_2E0 u) (V96e18_2E0 u) (V97e19_2E0 u) (V98e20_2E0 u) (V99e21_2E0 u) (V100e22_2E0 u) (V101e23_2E0 u) (V102e24_2E0 u) (V103e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V79e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V80e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V81e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V82e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V83e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V84e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V85e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V86e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V87e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V88e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V89e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V90e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V91e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V92e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V93e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V94e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V95e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V96e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V97e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V98e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V99e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V100e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V101e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V102e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V103e25_2E0)) (_let_1 V78l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_7) _let_3) (exists ((V104l_27_2E0 u) (V105e1_2E0 u) (V106e2_2E0 u) (V107e3_2E0 u) (V108e4_2E0 u) (V109e5_2E0 u) (V110e6_2E0 u) (V111e7_2E0 u) (V112e8_2E0 u) (V113e9_2E0 u) (V114e10_2E0 u) (V115e11_2E0 u) (V116e12_2E0 u) (V117e13_2E0 u) (V118e14_2E0 u) (V119e15_2E0 u) (V120e16_2E0 u) (V121e17_2E0 u) (V122e18_2E0 u) (V123e19_2E0 u) (V124e20_2E0 u) (V125e21_2E0 u) (V126e22_2E0 u) (V127e23_2E0 u) (V128e24_2E0 u) (V129e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V105e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V106e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V107e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V108e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V109e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V110e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V111e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V112e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V113e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V114e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V115e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V116e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V117e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V118e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V119e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V120e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V121e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V122e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V123e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V124e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V125e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V126e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V127e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V128e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V129e25_2E0)) (_let_1 V104l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_7) (exists ((V130l_27_2E0 u) (V131e1_2E0 u) (V132e2_2E0 u) (V133e3_2E0 u) (V134e4_2E0 u) (V135e5_2E0 u) (V136e6_2E0 u) (V137e7_2E0 u) (V138e8_2E0 u) (V139e9_2E0 u) (V140e10_2E0 u) (V141e11_2E0 u) (V142e12_2E0 u) (V143e13_2E0 u) (V144e14_2E0 u) (V145e15_2E0 u) (V146e16_2E0 u) (V147e17_2E0 u) (V148e18_2E0 u) (V149e19_2E0 u) (V150e20_2E0 u) (V151e21_2E0 u) (V152e22_2E0 u) (V153e23_2E0 u) (V154e24_2E0 u) (V155e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V131e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V132e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V133e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V134e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V135e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V136e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V137e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V138e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V139e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V140e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V141e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V142e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V143e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V144e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V145e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V146e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V147e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V148e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V149e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V150e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V151e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V152e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V153e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V154e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V155e25_2E0)) (_let_1 V130l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_10) _let_3) (exists ((V156l_27_2E0 u) (V157e1_2E0 u) (V158e2_2E0 u) (V159e3_2E0 u) (V160e4_2E0 u) (V161e5_2E0 u) (V162e6_2E0 u) (V163e7_2E0 u) (V164e8_2E0 u) (V165e9_2E0 u) (V166e10_2E0 u) (V167e11_2E0 u) (V168e12_2E0 u) (V169e13_2E0 u) (V170e14_2E0 u) (V171e15_2E0 u) (V172e16_2E0 u) (V173e17_2E0 u) (V174e18_2E0 u) (V175e19_2E0 u) (V176e20_2E0 u) (V177e21_2E0 u) (V178e22_2E0 u) (V179e23_2E0 u) (V180e24_2E0 u) (V181e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V156l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V157e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V158e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V159e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V160e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V161e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V162e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V163e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V164e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V165e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V166e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V167e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V168e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V169e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V170e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V171e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V172e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V173e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V174e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V175e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V176e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V177e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V178e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V179e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V180e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V181e25_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_3) (exists ((V208l_27_2E0 u) (V209e1_2E0 u) (V210e2_2E0 u) (V211e3_2E0 u) (V212e4_2E0 u) (V213e5_2E0 u) (V214e6_2E0 u) (V215e7_2E0 u) (V216e8_2E0 u) (V217e9_2E0 u) (V218e10_2E0 u) (V219e11_2E0 u) (V220e12_2E0 u) (V221e13_2E0 u) (V222e14_2E0 u) (V223e15_2E0 u) (V224e16_2E0 u) (V225e17_2E0 u) (V226e18_2E0 u) (V227e19_2E0 u) (V228e20_2E0 u) (V229e21_2E0 u) (V230e22_2E0 u) (V231e23_2E0 u) (V232e24_2E0 u) (V233e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V208l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V209e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V210e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V211e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V212e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V213e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V214e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V215e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V216e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V217e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V218e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V219e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V220e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V221e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V222e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V223e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V224e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V225e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V226e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V227e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V228e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V229e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V230e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V231e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V232e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V233e25_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V260l_27_2E0 u) (V261e1_2E0 u) (V262e2_2E0 u) (V263e3_2E0 u) (V264e4_2E0 u) (V265e5_2E0 u) (V266e6_2E0 u) (V267e7_2E0 u) (V268e8_2E0 u) (V269e9_2E0 u) (V270e10_2E0 u) (V271e11_2E0 u) (V272e12_2E0 u) (V273e13_2E0 u) (V274e14_2E0 u) (V275e15_2E0 u) (V276e16_2E0 u) (V277e17_2E0 u) (V278e18_2E0 u) (V279e19_2E0 u) (V280e20_2E0 u) (V281e21_2E0 u) (V282e22_2E0 u) (V283e23_2E0 u) (V284e24_2E0 u) (V285e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V260l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V261e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V262e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V263e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V264e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V265e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V266e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V267e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V268e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V269e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V270e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V271e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V272e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V273e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V274e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V275e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V276e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V277e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V278e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V279e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V280e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V281e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V282e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V283e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V284e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V285e25_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_10)) (= (= _let_10 _let_3) (exists ((V286l_27_2E0 u) (V287e1_2E0 u) (V288e2_2E0 u) (V289e3_2E0 u) (V290e4_2E0 u) (V291e5_2E0 u) (V292e6_2E0 u) (V293e7_2E0 u) (V294e8_2E0 u) (V295e9_2E0 u) (V296e10_2E0 u) (V297e11_2E0 u) (V298e12_2E0 u) (V299e13_2E0 u) (V300e14_2E0 u) (V301e15_2E0 u) (V302e16_2E0 u) (V303e17_2E0 u) (V304e18_2E0 u) (V305e19_2E0 u) (V306e20_2E0 u) (V307e21_2E0 u) (V308e22_2E0 u) (V309e23_2E0 u) (V310e24_2E0 u) (V311e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V286l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V287e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V288e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V289e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V290e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V291e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V292e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V293e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V294e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V295e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V296e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V297e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V298e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V299e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V300e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V301e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V302e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V303e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V304e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V305e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V306e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V307e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V308e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V309e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V310e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V311e25_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V338l_27_2E0 u) (V339e1_2E0 u) (V340e2_2E0 u) (V341e3_2E0 u) (V342e4_2E0 u) (V343e5_2E0 u) (V344e6_2E0 u) (V345e7_2E0 u) (V346e8_2E0 u) (V347e9_2E0 u) (V348e10_2E0 u) (V349e11_2E0 u) (V350e12_2E0 u) (V351e13_2E0 u) (V352e14_2E0 u) (V353e15_2E0 u) (V354e16_2E0 u) (V355e17_2E0 u) (V356e18_2E0 u) (V357e19_2E0 u) (V358e20_2E0 u) (V359e21_2E0 u) (V360e22_2E0 u) (V361e23_2E0 u) (V362e24_2E0 u) (V363e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V338l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V339e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V340e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V341e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V342e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V343e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V344e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V345e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V346e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V347e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V348e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V349e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V350e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V351e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V352e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V353e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V354e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V355e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V356e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V357e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V358e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V359e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V360e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V361e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V362e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V363e25_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_13 _let_3)) (= (= _let_3 _let_9) (exists ((V364e1_2E0 u) (V365e2_2E0 u) (V366e3_2E0 u) (V367e4_2E0 u) (V368e5_2E0 u) (V369e6_2E0 u) (V370e7_2E0 u) (V371e8_2E0 u) (V372e9_2E0 u) (V373e10_2E0 u) (V374e11_2E0 u) (V375e12_2E0 u) (V376e13_2E0 u) (V377e14_2E0 u) (V378e15_2E0 u) (V379e16_2E0 u) (V380e17_2E0 u) (V381e18_2E0 u) (V382e19_2E0 u) (V383e20_2E0 u) (V384e21_2E0 u) (V385e22_2E0 u) (V386e23_2E0 u) (V387e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V364e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V365e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V366e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V367e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V368e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V369e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V370e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V371e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V372e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V373e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V374e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V375e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V376e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V377e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V378e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V379e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V380e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V381e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V382e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V383e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V384e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V385e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V386e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V387e24_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (_let_21 _let_14) (exists ((V437l_27_2E0 u) (V438e1_2E0 u) (V439e2_2E0 u) (V440e3_2E0 u) (V441e4_2E0 u) (V442e5_2E0 u) (V443e6_2E0 u) (V444e7_2E0 u) (V445e8_2E0 u) (V446e9_2E0 u) (V447e10_2E0 u) (V448e11_2E0 u) (V449e12_2E0 u) (V450e13_2E0 u) (V451e14_2E0 u) (V452e15_2E0 u) (V453e16_2E0 u) (V454e17_2E0 u) (V455e18_2E0 u) (V456e19_2E0 u) (V457e20_2E0 u) (V458e21_2E0 u) (V459e22_2E0 u) (V460e23_2E0 u) (V461e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V438e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V439e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V440e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V441e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V442e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V443e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V444e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V445e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V446e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V447e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V448e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V449e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V450e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V451e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V452e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V453e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V454e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V455e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V456e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V457e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V458e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V459e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V460e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V461e24_2E0)) (_let_1 V437l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V562l_27_2E0 u) (V563e1_2E0 u) (V564e2_2E0 u) (V565e3_2E0 u) (V566e4_2E0 u) (V567e5_2E0 u) (V568e6_2E0 u) (V569e7_2E0 u) (V570e8_2E0 u) (V571e9_2E0 u) (V572e10_2E0 u) (V573e11_2E0 u) (V574e12_2E0 u) (V575e13_2E0 u) (V576e14_2E0 u) (V577e15_2E0 u) (V578e16_2E0 u) (V579e17_2E0 u) (V580e18_2E0 u) (V581e19_2E0 u) (V582e20_2E0 u) (V583e21_2E0 u) (V584e22_2E0 u) (V585e23_2E0 u) (V586e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V562l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V563e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V564e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V565e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V566e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V567e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V568e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V569e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V570e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V571e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V572e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V573e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V574e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V575e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V576e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V577e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V578e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V579e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V580e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V581e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V582e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V583e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V584e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V585e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V586e24_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_3)) (= (exists ((V587l_27_2E0 u) (V588e1_2E0 u) (V589e2_2E0 u) (V590e3_2E0 u) (V591e4_2E0 u) (V592e5_2E0 u) (V593e6_2E0 u) (V594e7_2E0 u) (V595e8_2E0 u) (V596e9_2E0 u) (V597e10_2E0 u) (V598e11_2E0 u) (V599e12_2E0 u) (V600e13_2E0 u) (V601e14_2E0 u) (V602e15_2E0 u) (V603e16_2E0 u) (V604e17_2E0 u) (V605e18_2E0 u) (V606e19_2E0 u) (V607e20_2E0 u) (V608e21_2E0 u) (V609e22_2E0 u) (V610e23_2E0 u) (V611e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V587l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V588e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V589e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V590e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V591e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V592e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V593e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V594e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V595e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V596e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V597e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V598e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V599e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V600e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V601e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V602e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V603e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V604e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V605e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V606e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V607e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V608e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V609e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V610e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V611e24_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_16)) (= (exists ((V662l_27_2E0 u) (V663e1_2E0 u) (V664e2_2E0 u) (V665e3_2E0 u) (V666e4_2E0 u) (V667e5_2E0 u) (V668e6_2E0 u) (V669e7_2E0 u) (V670e8_2E0 u) (V671e9_2E0 u) (V672e10_2E0 u) (V673e11_2E0 u) (V674e12_2E0 u) (V675e13_2E0 u) (V676e14_2E0 u) (V677e15_2E0 u) (V678e16_2E0 u) (V679e17_2E0 u) (V680e18_2E0 u) (V681e19_2E0 u) (V682e20_2E0 u) (V683e21_2E0 u) (V684e22_2E0 u) (V685e23_2E0 u) (V686e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V662l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V663e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V664e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V665e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V666e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V667e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V668e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V669e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V670e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V671e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V672e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V673e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V674e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V675e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V676e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V677e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V678e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V679e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V680e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V681e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V682e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V683e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V684e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V685e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V686e24_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_16)) (= (= _let_3 _let_14) (exists ((V712e1_2E0 u) (V713e2_2E0 u) (V714e3_2E0 u) (V715e4_2E0 u) (V716e5_2E0 u) (V717e6_2E0 u) (V718e7_2E0 u) (V719e8_2E0 u) (V720e9_2E0 u) (V721e10_2E0 u) (V722e11_2E0 u) (V723e12_2E0 u) (V724e13_2E0 u) (V725e14_2E0 u) (V726e15_2E0 u) (V727e16_2E0 u) (V728e17_2E0 u) (V729e18_2E0 u) (V730e19_2E0 u) (V731e20_2E0 u) (V732e21_2E0 u) (V733e22_2E0 u) (V734e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V712e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V713e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V714e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V715e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V716e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V717e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V718e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V719e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V720e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V721e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V722e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V723e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V724e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V725e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V726e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V727e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V728e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V729e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V730e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V731e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V732e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V733e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V734e23_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V806l_27_2E0 u) (V807e1_2E0 u) (V808e2_2E0 u) (V809e3_2E0 u) (V810e4_2E0 u) (V811e5_2E0 u) (V812e6_2E0 u) (V813e7_2E0 u) (V814e8_2E0 u) (V815e9_2E0 u) (V816e10_2E0 u) (V817e11_2E0 u) (V818e12_2E0 u) (V819e13_2E0 u) (V820e14_2E0 u) (V821e15_2E0 u) (V822e16_2E0 u) (V823e17_2E0 u) (V824e18_2E0 u) (V825e19_2E0 u) (V826e20_2E0 u) (V827e21_2E0 u) (V828e22_2E0 u) (V829e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V807e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V808e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V809e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V810e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V811e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V812e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V813e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V814e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V815e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V816e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V817e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V818e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V819e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V820e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V821e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V822e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V823e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V824e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V825e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V826e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V827e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V828e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V829e23_2E0)) (_let_1 V806l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_14) _let_3)) (= (exists ((V854l_27_2E0 u) (V855e1_2E0 u) (V856e2_2E0 u) (V857e3_2E0 u) (V858e4_2E0 u) (V859e5_2E0 u) (V860e6_2E0 u) (V861e7_2E0 u) (V862e8_2E0 u) (V863e9_2E0 u) (V864e10_2E0 u) (V865e11_2E0 u) (V866e12_2E0 u) (V867e13_2E0 u) (V868e14_2E0 u) (V869e15_2E0 u) (V870e16_2E0 u) (V871e17_2E0 u) (V872e18_2E0 u) (V873e19_2E0 u) (V874e20_2E0 u) (V875e21_2E0 u) (V876e22_2E0 u) (V877e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V854l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V855e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V856e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V857e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V858e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V859e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V860e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V861e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V862e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V863e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V864e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V865e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V866e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V867e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V868e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V869e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V870e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V871e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V872e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V873e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V874e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V875e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V876e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V877e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_23) _let_3) (exists ((V902l_27_2E0 u) (V903e1_2E0 u) (V904e2_2E0 u) (V905e3_2E0 u) (V906e4_2E0 u) (V907e5_2E0 u) (V908e6_2E0 u) (V909e7_2E0 u) (V910e8_2E0 u) (V911e9_2E0 u) (V912e10_2E0 u) (V913e11_2E0 u) (V914e12_2E0 u) (V915e13_2E0 u) (V916e14_2E0 u) (V917e15_2E0 u) (V918e16_2E0 u) (V919e17_2E0 u) (V920e18_2E0 u) (V921e19_2E0 u) (V922e20_2E0 u) (V923e21_2E0 u) (V924e22_2E0 u) (V925e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V902l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V903e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V904e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V905e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V906e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V907e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V908e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V909e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V910e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V911e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V912e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V913e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V914e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V915e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V916e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V917e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V918e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V919e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V920e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V921e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V922e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V923e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V924e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V925e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V974l_27_2E0 u) (V975e1_2E0 u) (V976e2_2E0 u) (V977e3_2E0 u) (V978e4_2E0 u) (V979e5_2E0 u) (V980e6_2E0 u) (V981e7_2E0 u) (V982e8_2E0 u) (V983e9_2E0 u) (V984e10_2E0 u) (V985e11_2E0 u) (V986e12_2E0 u) (V987e13_2E0 u) (V988e14_2E0 u) (V989e15_2E0 u) (V990e16_2E0 u) (V991e17_2E0 u) (V992e18_2E0 u) (V993e19_2E0 u) (V994e20_2E0 u) (V995e21_2E0 u) (V996e22_2E0 u) (V997e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V974l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V975e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V976e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V977e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V978e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V979e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V980e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V981e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V982e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V983e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V984e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V985e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V986e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V987e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V988e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V989e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V990e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V991e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V992e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V993e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V994e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V995e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V996e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V997e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_22 _let_3)) (= (= _let_3 _let_23) (exists ((V998l_27_2E0 u) (V999e1_2E0 u) (V1000e2_2E0 u) (V1001e3_2E0 u) (V1002e4_2E0 u) (V1003e5_2E0 u) (V1004e6_2E0 u) (V1005e7_2E0 u) (V1006e8_2E0 u) (V1007e9_2E0 u) (V1008e10_2E0 u) (V1009e11_2E0 u) (V1010e12_2E0 u) (V1011e13_2E0 u) (V1012e14_2E0 u) (V1013e15_2E0 u) (V1014e16_2E0 u) (V1015e17_2E0 u) (V1016e18_2E0 u) (V1017e19_2E0 u) (V1018e20_2E0 u) (V1019e21_2E0 u) (V1020e22_2E0 u) (V1021e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V998l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V999e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1000e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1001e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1002e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1003e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1004e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1005e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1006e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1007e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1008e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1009e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1010e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1011e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1012e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1013e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1014e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1015e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1016e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1017e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1018e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1019e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1020e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1021e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1068e1_2E0 u) (V1069e2_2E0 u) (V1070e3_2E0 u) (V1071e4_2E0 u) (V1072e5_2E0 u) (V1073e6_2E0 u) (V1074e7_2E0 u) (V1075e8_2E0 u) (V1076e9_2E0 u) (V1077e10_2E0 u) (V1078e11_2E0 u) (V1079e12_2E0 u) (V1080e13_2E0 u) (V1081e14_2E0 u) (V1082e15_2E0 u) (V1083e16_2E0 u) (V1084e17_2E0 u) (V1085e18_2E0 u) (V1086e19_2E0 u) (V1087e20_2E0 u) (V1088e21_2E0 u) (V1089e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1068e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1069e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1070e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1071e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1072e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1073e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1074e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1075e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1076e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1077e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1078e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1079e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1080e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1081e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1082e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1083e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1084e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1085e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1086e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1087e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1088e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1089e22_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_20 _let_3)) (= (exists ((V1113l_27_2E0 u) (V1114e1_2E0 u) (V1115e2_2E0 u) (V1116e3_2E0 u) (V1117e4_2E0 u) (V1118e5_2E0 u) (V1119e6_2E0 u) (V1120e7_2E0 u) (V1121e8_2E0 u) (V1122e9_2E0 u) (V1123e10_2E0 u) (V1124e11_2E0 u) (V1125e12_2E0 u) (V1126e13_2E0 u) (V1127e14_2E0 u) (V1128e15_2E0 u) (V1129e16_2E0 u) (V1130e17_2E0 u) (V1131e18_2E0 u) (V1132e19_2E0 u) (V1133e20_2E0 u) (V1134e21_2E0 u) (V1135e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1114e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1115e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1116e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1117e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1118e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1119e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1120e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1121e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1122e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1123e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1124e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1125e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1126e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1127e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1128e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1129e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1130e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1131e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1132e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1133e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1134e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1135e22_2E0)) (_let_1 V1113l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))) (_let_21 _let_24)) (= (exists ((V1159l_27_2E0 u) (V1160e1_2E0 u) (V1161e2_2E0 u) (V1162e3_2E0 u) (V1163e4_2E0 u) (V1164e5_2E0 u) (V1165e6_2E0 u) (V1166e7_2E0 u) (V1167e8_2E0 u) (V1168e9_2E0 u) (V1169e10_2E0 u) (V1170e11_2E0 u) (V1171e12_2E0 u) (V1172e13_2E0 u) (V1173e14_2E0 u) (V1174e15_2E0 u) (V1175e16_2E0 u) (V1176e17_2E0 u) (V1177e18_2E0 u) (V1178e19_2E0 u) (V1179e20_2E0 u) (V1180e21_2E0 u) (V1181e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1160e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1161e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1162e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1163e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1164e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1165e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1166e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1167e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1168e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1169e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1170e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1171e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1172e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1173e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1174e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1175e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1176e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1177e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1178e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1179e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1180e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1181e22_2E0)) (_let_1 V1159l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_20)) (= (_let_11 _let_25) (exists ((V1205l_27_2E0 u) (V1206e1_2E0 u) (V1207e2_2E0 u) (V1208e3_2E0 u) (V1209e4_2E0 u) (V1210e5_2E0 u) (V1211e6_2E0 u) (V1212e7_2E0 u) (V1213e8_2E0 u) (V1214e9_2E0 u) (V1215e10_2E0 u) (V1216e11_2E0 u) (V1217e12_2E0 u) (V1218e13_2E0 u) (V1219e14_2E0 u) (V1220e15_2E0 u) (V1221e16_2E0 u) (V1222e17_2E0 u) (V1223e18_2E0 u) (V1224e19_2E0 u) (V1225e20_2E0 u) (V1226e21_2E0 u) (V1227e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1205l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1206e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1207e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1208e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1209e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1210e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1211e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1212e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1213e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1214e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1215e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1216e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1217e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1218e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1219e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1220e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1221e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1222e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1223e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1224e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1225e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1226e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1227e22_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_26) _let_3) (exists ((V1228l_27_2E0 u) (V1229e1_2E0 u) (V1230e2_2E0 u) (V1231e3_2E0 u) (V1232e4_2E0 u) (V1233e5_2E0 u) (V1234e6_2E0 u) (V1235e7_2E0 u) (V1236e8_2E0 u) (V1237e9_2E0 u) (V1238e10_2E0 u) (V1239e11_2E0 u) (V1240e12_2E0 u) (V1241e13_2E0 u) (V1242e14_2E0 u) (V1243e15_2E0 u) (V1244e16_2E0 u) (V1245e17_2E0 u) (V1246e18_2E0 u) (V1247e19_2E0 u) (V1248e20_2E0 u) (V1249e21_2E0 u) (V1250e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1228l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1229e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1230e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1231e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1232e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1233e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1234e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1235e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1236e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1237e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1238e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1239e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1240e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1241e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1242e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1243e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1244e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1245e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1246e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1247e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1248e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1249e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1250e22_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1274l_27_2E0 u) (V1275e1_2E0 u) (V1276e2_2E0 u) (V1277e3_2E0 u) (V1278e4_2E0 u) (V1279e5_2E0 u) (V1280e6_2E0 u) (V1281e7_2E0 u) (V1282e8_2E0 u) (V1283e9_2E0 u) (V1284e10_2E0 u) (V1285e11_2E0 u) (V1286e12_2E0 u) (V1287e13_2E0 u) (V1288e14_2E0 u) (V1289e15_2E0 u) (V1290e16_2E0 u) (V1291e17_2E0 u) (V1292e18_2E0 u) (V1293e19_2E0 u) (V1294e20_2E0 u) (V1295e21_2E0 u) (V1296e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1274l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1275e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1276e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1277e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1278e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1279e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1280e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1281e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1282e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1283e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1284e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1285e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1286e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1287e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1288e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1289e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1290e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1291e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1292e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1293e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1294e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1295e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1296e22_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_25)) (= (= _let_3 _let_26) (exists ((V1320l_27_2E0 u) (V1321e1_2E0 u) (V1322e2_2E0 u) (V1323e3_2E0 u) (V1324e4_2E0 u) (V1325e5_2E0 u) (V1326e6_2E0 u) (V1327e7_2E0 u) (V1328e8_2E0 u) (V1329e9_2E0 u) (V1330e10_2E0 u) (V1331e11_2E0 u) (V1332e12_2E0 u) (V1333e13_2E0 u) (V1334e14_2E0 u) (V1335e15_2E0 u) (V1336e16_2E0 u) (V1337e17_2E0 u) (V1338e18_2E0 u) (V1339e19_2E0 u) (V1340e20_2E0 u) (V1341e21_2E0 u) (V1342e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1320l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1321e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1322e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1323e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1324e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1325e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1326e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1327e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1328e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1329e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1330e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1331e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1332e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1333e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1334e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1335e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1336e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1337e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1338e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1339e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1340e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1341e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1342e22_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_24 _let_3) (exists ((V1387e1_2E0 u) (V1388e2_2E0 u) (V1389e3_2E0 u) (V1390e4_2E0 u) (V1391e5_2E0 u) (V1392e6_2E0 u) (V1393e7_2E0 u) (V1394e8_2E0 u) (V1395e9_2E0 u) (V1396e10_2E0 u) (V1397e11_2E0 u) (V1398e12_2E0 u) (V1399e13_2E0 u) (V1400e14_2E0 u) (V1401e15_2E0 u) (V1402e16_2E0 u) (V1403e17_2E0 u) (V1404e18_2E0 u) (V1405e19_2E0 u) (V1406e20_2E0 u) (V1407e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1387e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1388e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1389e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1390e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1391e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1392e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1393e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1394e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1395e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1396e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1397e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1398e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1399e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1400e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1401e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1402e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1403e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1404e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1405e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1406e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1407e21_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_31) _let_3) (exists ((V1408l_27_2E0 u) (V1409e1_2E0 u) (V1410e2_2E0 u) (V1411e3_2E0 u) (V1412e4_2E0 u) (V1413e5_2E0 u) (V1414e6_2E0 u) (V1415e7_2E0 u) (V1416e8_2E0 u) (V1417e9_2E0 u) (V1418e10_2E0 u) (V1419e11_2E0 u) (V1420e12_2E0 u) (V1421e13_2E0 u) (V1422e14_2E0 u) (V1423e15_2E0 u) (V1424e16_2E0 u) (V1425e17_2E0 u) (V1426e18_2E0 u) (V1427e19_2E0 u) (V1428e20_2E0 u) (V1429e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1409e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1410e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1411e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1412e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1413e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1414e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1415e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1416e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1417e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1418e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1419e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1420e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1421e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1422e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1423e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1424e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1425e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1426e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1427e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1428e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1429e21_2E0)) (_let_1 V1408l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))) (= (_let_21 _let_31) (exists ((V1430l_27_2E0 u) (V1431e1_2E0 u) (V1432e2_2E0 u) (V1433e3_2E0 u) (V1434e4_2E0 u) (V1435e5_2E0 u) (V1436e6_2E0 u) (V1437e7_2E0 u) (V1438e8_2E0 u) (V1439e9_2E0 u) (V1440e10_2E0 u) (V1441e11_2E0 u) (V1442e12_2E0 u) (V1443e13_2E0 u) (V1444e14_2E0 u) (V1445e15_2E0 u) (V1446e16_2E0 u) (V1447e17_2E0 u) (V1448e18_2E0 u) (V1449e19_2E0 u) (V1450e20_2E0 u) (V1451e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1431e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1432e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1433e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1434e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1435e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1436e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1437e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1438e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1439e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1440e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1441e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1442e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1443e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1444e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1445e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1446e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1447e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1448e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1449e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1450e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1451e21_2E0)) (_let_1 V1430l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1474l_27_2E0 u) (V1475e1_2E0 u) (V1476e2_2E0 u) (V1477e3_2E0 u) (V1478e4_2E0 u) (V1479e5_2E0 u) (V1480e6_2E0 u) (V1481e7_2E0 u) (V1482e8_2E0 u) (V1483e9_2E0 u) (V1484e10_2E0 u) (V1485e11_2E0 u) (V1486e12_2E0 u) (V1487e13_2E0 u) (V1488e14_2E0 u) (V1489e15_2E0 u) (V1490e16_2E0 u) (V1491e17_2E0 u) (V1492e18_2E0 u) (V1493e19_2E0 u) (V1494e20_2E0 u) (V1495e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1475e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1476e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1477e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1478e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1479e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1480e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1481e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1482e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1483e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1484e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1485e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1486e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1487e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1488e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1489e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1490e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1491e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1492e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1493e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1494e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1495e21_2E0)) (_let_1 V1474l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_24)) (= (= _let_3 _let_27) (exists ((V1584l_27_2E0 u) (V1585e1_2E0 u) (V1586e2_2E0 u) (V1587e3_2E0 u) (V1588e4_2E0 u) (V1589e5_2E0 u) (V1590e6_2E0 u) (V1591e7_2E0 u) (V1592e8_2E0 u) (V1593e9_2E0 u) (V1594e10_2E0 u) (V1595e11_2E0 u) (V1596e12_2E0 u) (V1597e13_2E0 u) (V1598e14_2E0 u) (V1599e15_2E0 u) (V1600e16_2E0 u) (V1601e17_2E0 u) (V1602e18_2E0 u) (V1603e19_2E0 u) (V1604e20_2E0 u) (V1605e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1584l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1585e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1586e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1587e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1588e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1589e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1590e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1591e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1592e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1593e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1594e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1595e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1596e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1597e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1598e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1599e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1600e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1601e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1602e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1603e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1604e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1605e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_27 _let_3) (exists ((V1606l_27_2E0 u) (V1607e1_2E0 u) (V1608e2_2E0 u) (V1609e3_2E0 u) (V1610e4_2E0 u) (V1611e5_2E0 u) (V1612e6_2E0 u) (V1613e7_2E0 u) (V1614e8_2E0 u) (V1615e9_2E0 u) (V1616e10_2E0 u) (V1617e11_2E0 u) (V1618e12_2E0 u) (V1619e13_2E0 u) (V1620e14_2E0 u) (V1621e15_2E0 u) (V1622e16_2E0 u) (V1623e17_2E0 u) (V1624e18_2E0 u) (V1625e19_2E0 u) (V1626e20_2E0 u) (V1627e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1606l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1607e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1608e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1609e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1610e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1611e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1612e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1613e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1614e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1615e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1616e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1617e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1618e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1619e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1620e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1621e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1622e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1623e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1624e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1625e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1626e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1627e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1628l_27_2E0 u) (V1629e1_2E0 u) (V1630e2_2E0 u) (V1631e3_2E0 u) (V1632e4_2E0 u) (V1633e5_2E0 u) (V1634e6_2E0 u) (V1635e7_2E0 u) (V1636e8_2E0 u) (V1637e9_2E0 u) (V1638e10_2E0 u) (V1639e11_2E0 u) (V1640e12_2E0 u) (V1641e13_2E0 u) (V1642e14_2E0 u) (V1643e15_2E0 u) (V1644e16_2E0 u) (V1645e17_2E0 u) (V1646e18_2E0 u) (V1647e19_2E0 u) (V1648e20_2E0 u) (V1649e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1628l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1629e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1630e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1631e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1632e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1633e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1634e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1635e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1636e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1637e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1638e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1639e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1640e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1641e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1642e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1643e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1644e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1645e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1646e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1647e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1648e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1649e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_28)) (= (= _let_3 _let_31) (exists ((V1672e1_2E0 u) (V1673e2_2E0 u) (V1674e3_2E0 u) (V1675e4_2E0 u) (V1676e5_2E0 u) (V1677e6_2E0 u) (V1678e7_2E0 u) (V1679e8_2E0 u) (V1680e9_2E0 u) (V1681e10_2E0 u) (V1682e11_2E0 u) (V1683e12_2E0 u) (V1684e13_2E0 u) (V1685e14_2E0 u) (V1686e15_2E0 u) (V1687e16_2E0 u) (V1688e17_2E0 u) (V1689e18_2E0 u) (V1690e19_2E0 u) (V1691e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1672e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1673e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1674e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1675e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1676e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1677e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1678e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1679e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1680e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1681e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1682e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1683e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1684e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1685e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1686e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1687e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1688e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1689e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1690e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1691e20_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1692e1_2E0 u) (V1693e2_2E0 u) (V1694e3_2E0 u) (V1695e4_2E0 u) (V1696e5_2E0 u) (V1697e6_2E0 u) (V1698e7_2E0 u) (V1699e8_2E0 u) (V1700e9_2E0 u) (V1701e10_2E0 u) (V1702e11_2E0 u) (V1703e12_2E0 u) (V1704e13_2E0 u) (V1705e14_2E0 u) (V1706e15_2E0 u) (V1707e16_2E0 u) (V1708e17_2E0 u) (V1709e18_2E0 u) (V1710e19_2E0 u) (V1711e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1692e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1693e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1694e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1695e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1696e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1697e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1698e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1699e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1700e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1701e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1702e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1703e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1704e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1705e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1706e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1707e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1708e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1709e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1710e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1711e20_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))) (= _let_31 _let_3)) (= (exists ((V1712l_27_2E0 u) (V1713e1_2E0 u) (V1714e2_2E0 u) (V1715e3_2E0 u) (V1716e4_2E0 u) (V1717e5_2E0 u) (V1718e6_2E0 u) (V1719e7_2E0 u) (V1720e8_2E0 u) (V1721e9_2E0 u) (V1722e10_2E0 u) (V1723e11_2E0 u) (V1724e12_2E0 u) (V1725e13_2E0 u) (V1726e14_2E0 u) (V1727e15_2E0 u) (V1728e16_2E0 u) (V1729e17_2E0 u) (V1730e18_2E0 u) (V1731e19_2E0 u) (V1732e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1713e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1714e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1715e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1716e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1717e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1718e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1719e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1720e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1721e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1722e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1723e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1724e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1725e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1726e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1727e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1728e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1729e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1730e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1731e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1732e20_2E0)) (_let_1 V1712l_27_2E0))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_30) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_31) _let_3) (exists ((V1754l_27_2E0 u) (V1755e1_2E0 u) (V1756e2_2E0 u) (V1757e3_2E0 u) (V1758e4_2E0 u) (V1759e5_2E0 u) (V1760e6_2E0 u) (V1761e7_2E0 u) (V1762e8_2E0 u) (V1763e9_2E0 u) (V1764e10_2E0 u) (V1765e11_2E0 u) (V1766e12_2E0 u) (V1767e13_2E0 u) (V1768e14_2E0 u) (V1769e15_2E0 u) (V1770e16_2E0 u) (V1771e17_2E0 u) (V1772e18_2E0 u) (V1773e19_2E0 u) (V1774e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1755e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1756e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1757e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1758e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1759e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1760e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1761e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1762e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1763e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1764e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1765e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1766e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1767e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1768e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1769e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1770e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1771e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1772e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1773e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1774e20_2E0)) (_let_1 V1754l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1796l_27_2E0 u) (V1797e1_2E0 u) (V1798e2_2E0 u) (V1799e3_2E0 u) (V1800e4_2E0 u) (V1801e5_2E0 u) (V1802e6_2E0 u) (V1803e7_2E0 u) (V1804e8_2E0 u) (V1805e9_2E0 u) (V1806e10_2E0 u) (V1807e11_2E0 u) (V1808e12_2E0 u) (V1809e13_2E0 u) (V1810e14_2E0 u) (V1811e15_2E0 u) (V1812e16_2E0 u) (V1813e17_2E0 u) (V1814e18_2E0 u) (V1815e19_2E0 u) (V1816e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1796l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1797e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1798e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1799e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1800e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1801e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1802e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1803e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1804e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1805e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1806e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1807e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1808e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1809e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1810e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1811e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1812e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1813e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1814e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1815e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1816e20_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_32) _let_3)) (= (_let_11 _let_33) (exists ((V1859l_27_2E0 u) (V1860e1_2E0 u) (V1861e2_2E0 u) (V1862e3_2E0 u) (V1863e4_2E0 u) (V1864e5_2E0 u) (V1865e6_2E0 u) (V1866e7_2E0 u) (V1867e8_2E0 u) (V1868e9_2E0 u) (V1869e10_2E0 u) (V1870e11_2E0 u) (V1871e12_2E0 u) (V1872e13_2E0 u) (V1873e14_2E0 u) (V1874e15_2E0 u) (V1875e16_2E0 u) (V1876e17_2E0 u) (V1877e18_2E0 u) (V1878e19_2E0 u) (V1879e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1859l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1860e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1861e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1862e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1863e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1864e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1865e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1866e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1867e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1868e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1869e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1870e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1871e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1872e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1873e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1874e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1875e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1876e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1877e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1878e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1879e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1880l_27_2E0 u) (V1881e1_2E0 u) (V1882e2_2E0 u) (V1883e3_2E0 u) (V1884e4_2E0 u) (V1885e5_2E0 u) (V1886e6_2E0 u) (V1887e7_2E0 u) (V1888e8_2E0 u) (V1889e9_2E0 u) (V1890e10_2E0 u) (V1891e11_2E0 u) (V1892e12_2E0 u) (V1893e13_2E0 u) (V1894e14_2E0 u) (V1895e15_2E0 u) (V1896e16_2E0 u) (V1897e17_2E0 u) (V1898e18_2E0 u) (V1899e19_2E0 u) (V1900e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1880l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1881e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1882e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1883e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1884e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1885e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1886e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1887e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1888e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1889e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1890e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1891e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1892e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1893e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1894e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1895e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1896e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1897e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1898e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1899e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1900e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_32)) (= (exists ((V1943l_27_2E0 u) (V1944e1_2E0 u) (V1945e2_2E0 u) (V1946e3_2E0 u) (V1947e4_2E0 u) (V1948e5_2E0 u) (V1949e6_2E0 u) (V1950e7_2E0 u) (V1951e8_2E0 u) (V1952e9_2E0 u) (V1953e10_2E0 u) (V1954e11_2E0 u) (V1955e12_2E0 u) (V1956e13_2E0 u) (V1957e14_2E0 u) (V1958e15_2E0 u) (V1959e16_2E0 u) (V1960e17_2E0 u) (V1961e18_2E0 u) (V1962e19_2E0 u) (V1963e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1943l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1944e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1945e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1946e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1947e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1948e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1949e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1950e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1951e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1952e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1953e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1954e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1955e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1956e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1957e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1958e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1959e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1960e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1961e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1962e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1963e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_33 _let_3)) (= (exists ((V1964e1_2E0 u) (V1965e2_2E0 u) (V1966e3_2E0 u) (V1967e4_2E0 u) (V1968e5_2E0 u) (V1969e6_2E0 u) (V1970e7_2E0 u) (V1971e8_2E0 u) (V1972e9_2E0 u) (V1973e10_2E0 u) (V1974e11_2E0 u) (V1975e12_2E0 u) (V1976e13_2E0 u) (V1977e14_2E0 u) (V1978e15_2E0 u) (V1979e16_2E0 u) (V1980e17_2E0 u) (V1981e18_2E0 u) (V1982e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1964e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1965e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1966e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1967e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1968e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1969e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1970e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1971e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1972e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1973e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1974e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1975e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1976e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1977e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1978e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1979e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1980e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1981e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1982e19_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_30)) (= (_let_21 _let_36) (exists ((V2022l_27_2E0 u) (V2023e1_2E0 u) (V2024e2_2E0 u) (V2025e3_2E0 u) (V2026e4_2E0 u) (V2027e5_2E0 u) (V2028e6_2E0 u) (V2029e7_2E0 u) (V2030e8_2E0 u) (V2031e9_2E0 u) (V2032e10_2E0 u) (V2033e11_2E0 u) (V2034e12_2E0 u) (V2035e13_2E0 u) (V2036e14_2E0 u) (V2037e15_2E0 u) (V2038e16_2E0 u) (V2039e17_2E0 u) (V2040e18_2E0 u) (V2041e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2023e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2024e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2025e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2026e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2027e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2028e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2029e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2030e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2031e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2032e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2033e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2034e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2035e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2036e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2037e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2038e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2039e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2040e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2041e19_2E0)) (_let_1 V2022l_27_2E0)))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V2062l_27_2E0 u) (V2063e1_2E0 u) (V2064e2_2E0 u) (V2065e3_2E0 u) (V2066e4_2E0 u) (V2067e5_2E0 u) (V2068e6_2E0 u) (V2069e7_2E0 u) (V2070e8_2E0 u) (V2071e9_2E0 u) (V2072e10_2E0 u) (V2073e11_2E0 u) (V2074e12_2E0 u) (V2075e13_2E0 u) (V2076e14_2E0 u) (V2077e15_2E0 u) (V2078e16_2E0 u) (V2079e17_2E0 u) (V2080e18_2E0 u) (V2081e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2063e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2064e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2065e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2066e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2067e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2068e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2069e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2070e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2071e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2072e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2073e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2074e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2075e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2076e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2077e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2078e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2079e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2080e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2081e19_2E0)) (_let_1 V2062l_27_2E0))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_30)) (= (exists ((V2102l_27_2E0 u) (V2103e1_2E0 u) (V2104e2_2E0 u) (V2105e3_2E0 u) (V2106e4_2E0 u) (V2107e5_2E0 u) (V2108e6_2E0 u) (V2109e7_2E0 u) (V2110e8_2E0 u) (V2111e9_2E0 u) (V2112e10_2E0 u) (V2113e11_2E0 u) (V2114e12_2E0 u) (V2115e13_2E0 u) (V2116e14_2E0 u) (V2117e15_2E0 u) (V2118e16_2E0 u) (V2119e17_2E0 u) (V2120e18_2E0 u) (V2121e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2102l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2103e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2104e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2105e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2106e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2107e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2108e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2109e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2110e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2111e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2112e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2113e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2114e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2115e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2116e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2117e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2118e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2119e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2120e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2121e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_37)) (= (exists ((V2122l_27_2E0 u) (V2123e1_2E0 u) (V2124e2_2E0 u) (V2125e3_2E0 u) (V2126e4_2E0 u) (V2127e5_2E0 u) (V2128e6_2E0 u) (V2129e7_2E0 u) (V2130e8_2E0 u) (V2131e9_2E0 u) (V2132e10_2E0 u) (V2133e11_2E0 u) (V2134e12_2E0 u) (V2135e13_2E0 u) (V2136e14_2E0 u) (V2137e15_2E0 u) (V2138e16_2E0 u) (V2139e17_2E0 u) (V2140e18_2E0 u) (V2141e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2122l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2123e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2124e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2125e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2126e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2127e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2128e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2129e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2130e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2131e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2132e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2133e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2134e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2135e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2136e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2137e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2138e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2139e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2140e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2141e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_38) _let_3)) (= (exists ((V2142l_27_2E0 u) (V2143e1_2E0 u) (V2144e2_2E0 u) (V2145e3_2E0 u) (V2146e4_2E0 u) (V2147e5_2E0 u) (V2148e6_2E0 u) (V2149e7_2E0 u) (V2150e8_2E0 u) (V2151e9_2E0 u) (V2152e10_2E0 u) (V2153e11_2E0 u) (V2154e12_2E0 u) (V2155e13_2E0 u) (V2156e14_2E0 u) (V2157e15_2E0 u) (V2158e16_2E0 u) (V2159e17_2E0 u) (V2160e18_2E0 u) (V2161e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2142l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2143e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2144e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2145e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2146e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2147e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2148e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2149e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2150e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2151e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2152e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2153e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2154e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2155e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2156e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2157e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2158e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2159e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2160e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2161e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_38)) (= (exists ((V2162l_27_2E0 u) (V2163e1_2E0 u) (V2164e2_2E0 u) (V2165e3_2E0 u) (V2166e4_2E0 u) (V2167e5_2E0 u) (V2168e6_2E0 u) (V2169e7_2E0 u) (V2170e8_2E0 u) (V2171e9_2E0 u) (V2172e10_2E0 u) (V2173e11_2E0 u) (V2174e12_2E0 u) (V2175e13_2E0 u) (V2176e14_2E0 u) (V2177e15_2E0 u) (V2178e16_2E0 u) (V2179e17_2E0 u) (V2180e18_2E0 u) (V2181e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2162l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2163e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2164e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2165e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2166e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2167e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2168e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2169e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2170e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2171e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2172e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2173e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2174e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2175e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2176e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2177e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2178e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2179e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2180e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2181e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_37)) (= (= _let_3 _let_38) (exists ((V2202l_27_2E0 u) (V2203e1_2E0 u) (V2204e2_2E0 u) (V2205e3_2E0 u) (V2206e4_2E0 u) (V2207e5_2E0 u) (V2208e6_2E0 u) (V2209e7_2E0 u) (V2210e8_2E0 u) (V2211e9_2E0 u) (V2212e10_2E0 u) (V2213e11_2E0 u) (V2214e12_2E0 u) (V2215e13_2E0 u) (V2216e14_2E0 u) (V2217e15_2E0 u) (V2218e16_2E0 u) (V2219e17_2E0 u) (V2220e18_2E0 u) (V2221e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2202l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2203e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2204e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2205e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2206e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2207e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2208e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2209e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2210e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2211e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2212e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2213e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2214e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2215e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2216e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2217e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2218e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2219e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2220e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2221e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2260e1_2E0 u) (V2261e2_2E0 u) (V2262e3_2E0 u) (V2263e4_2E0 u) (V2264e5_2E0 u) (V2265e6_2E0 u) (V2266e7_2E0 u) (V2267e8_2E0 u) (V2268e9_2E0 u) (V2269e10_2E0 u) (V2270e11_2E0 u) (V2271e12_2E0 u) (V2272e13_2E0 u) (V2273e14_2E0 u) (V2274e15_2E0 u) (V2275e16_2E0 u) (V2276e17_2E0 u) (V2277e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2260e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2261e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2262e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2263e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2264e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2265e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2266e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2267e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2268e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2269e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2270e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2271e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2272e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2273e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2274e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2275e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2276e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2277e18_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))) (= _let_36 _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_36) _let_3) (exists ((V2316l_27_2E0 u) (V2317e1_2E0 u) (V2318e2_2E0 u) (V2319e3_2E0 u) (V2320e4_2E0 u) (V2321e5_2E0 u) (V2322e6_2E0 u) (V2323e7_2E0 u) (V2324e8_2E0 u) (V2325e9_2E0 u) (V2326e10_2E0 u) (V2327e11_2E0 u) (V2328e12_2E0 u) (V2329e13_2E0 u) (V2330e14_2E0 u) (V2331e15_2E0 u) (V2332e16_2E0 u) (V2333e17_2E0 u) (V2334e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2317e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2318e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2319e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2320e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2321e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2322e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2323e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2324e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2325e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2326e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2327e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2328e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2329e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2330e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2331e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2332e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2333e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2334e18_2E0)) (_let_1 V2316l_27_2E0)))))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_36) (exists ((V2335l_27_2E0 u) (V2336e1_2E0 u) (V2337e2_2E0 u) (V2338e3_2E0 u) (V2339e4_2E0 u) (V2340e5_2E0 u) (V2341e6_2E0 u) (V2342e7_2E0 u) (V2343e8_2E0 u) (V2344e9_2E0 u) (V2345e10_2E0 u) (V2346e11_2E0 u) (V2347e12_2E0 u) (V2348e13_2E0 u) (V2349e14_2E0 u) (V2350e15_2E0 u) (V2351e16_2E0 u) (V2352e17_2E0 u) (V2353e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2336e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2337e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2338e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2339e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2340e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2341e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2342e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2343e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2344e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2345e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2346e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2347e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2348e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2349e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2350e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2351e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2352e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2353e18_2E0)) (_let_1 V2335l_27_2E0)))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_41) _let_3) (exists ((V2392l_27_2E0 u) (V2393e1_2E0 u) (V2394e2_2E0 u) (V2395e3_2E0 u) (V2396e4_2E0 u) (V2397e5_2E0 u) (V2398e6_2E0 u) (V2399e7_2E0 u) (V2400e8_2E0 u) (V2401e9_2E0 u) (V2402e10_2E0 u) (V2403e11_2E0 u) (V2404e12_2E0 u) (V2405e13_2E0 u) (V2406e14_2E0 u) (V2407e15_2E0 u) (V2408e16_2E0 u) (V2409e17_2E0 u) (V2410e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2392l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2393e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2394e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2395e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2396e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2397e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2398e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2399e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2400e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2401e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2402e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2403e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2404e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2405e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2406e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2407e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2408e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2409e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2410e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_11 _let_41) (exists ((V2411l_27_2E0 u) (V2412e1_2E0 u) (V2413e2_2E0 u) (V2414e3_2E0 u) (V2415e4_2E0 u) (V2416e5_2E0 u) (V2417e6_2E0 u) (V2418e7_2E0 u) (V2419e8_2E0 u) (V2420e9_2E0 u) (V2421e10_2E0 u) (V2422e11_2E0 u) (V2423e12_2E0 u) (V2424e13_2E0 u) (V2425e14_2E0 u) (V2426e15_2E0 u) (V2427e16_2E0 u) (V2428e17_2E0 u) (V2429e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2411l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2412e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2413e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2414e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2415e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2416e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2417e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2418e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2419e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2420e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2421e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2422e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2423e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2424e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2425e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2426e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2427e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2428e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2429e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_3 _let_40) (exists ((V2430l_27_2E0 u) (V2431e1_2E0 u) (V2432e2_2E0 u) (V2433e3_2E0 u) (V2434e4_2E0 u) (V2435e5_2E0 u) (V2436e6_2E0 u) (V2437e7_2E0 u) (V2438e8_2E0 u) (V2439e9_2E0 u) (V2440e10_2E0 u) (V2441e11_2E0 u) (V2442e12_2E0 u) (V2443e13_2E0 u) (V2444e14_2E0 u) (V2445e15_2E0 u) (V2446e16_2E0 u) (V2447e17_2E0 u) (V2448e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2430l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2431e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2432e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2433e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2434e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2435e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2436e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2437e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2438e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2439e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2440e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2441e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2442e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2443e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2444e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2445e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2446e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2447e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2448e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_40 _let_3) (exists ((V2449l_27_2E0 u) (V2450e1_2E0 u) (V2451e2_2E0 u) (V2452e3_2E0 u) (V2453e4_2E0 u) (V2454e5_2E0 u) (V2455e6_2E0 u) (V2456e7_2E0 u) (V2457e8_2E0 u) (V2458e9_2E0 u) (V2459e10_2E0 u) (V2460e11_2E0 u) (V2461e12_2E0 u) (V2462e13_2E0 u) (V2463e14_2E0 u) (V2464e15_2E0 u) (V2465e16_2E0 u) (V2466e17_2E0 u) (V2467e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2449l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2450e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2451e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2452e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2453e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2454e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2455e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2456e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2457e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2458e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2459e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2460e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2461e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2462e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2463e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2464e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2465e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2466e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2467e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (= _let_41 _let_3) (exists ((V2487l_27_2E0 u) (V2488e1_2E0 u) (V2489e2_2E0 u) (V2490e3_2E0 u) (V2491e4_2E0 u) (V2492e5_2E0 u) (V2493e6_2E0 u) (V2494e7_2E0 u) (V2495e8_2E0 u) (V2496e9_2E0 u) (V2497e10_2E0 u) (V2498e11_2E0 u) (V2499e12_2E0 u) (V2500e13_2E0 u) (V2501e14_2E0 u) (V2502e15_2E0 u) (V2503e16_2E0 u) (V2504e17_2E0 u) (V2505e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2487l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2488e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2489e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2490e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2491e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2492e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2493e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2494e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2495e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2496e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2497e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2498e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2499e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2500e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2501e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2502e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2503e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2504e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2505e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_39) (exists ((V2506e1_2E0 u) (V2507e2_2E0 u) (V2508e3_2E0 u) (V2509e4_2E0 u) (V2510e5_2E0 u) (V2511e6_2E0 u) (V2512e7_2E0 u) (V2513e8_2E0 u) (V2514e9_2E0 u) (V2515e10_2E0 u) (V2516e11_2E0 u) (V2517e12_2E0 u) (V2518e13_2E0 u) (V2519e14_2E0 u) (V2520e15_2E0 u) (V2521e16_2E0 u) (V2522e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2506e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2507e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2508e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2509e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2510e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2511e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2512e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2513e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2514e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2515e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2516e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2517e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2518e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2519e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2520e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2521e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2522e17_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))) (= (exists ((V2558l_27_2E0 u) (V2559e1_2E0 u) (V2560e2_2E0 u) (V2561e3_2E0 u) (V2562e4_2E0 u) (V2563e5_2E0 u) (V2564e6_2E0 u) (V2565e7_2E0 u) (V2566e8_2E0 u) (V2567e9_2E0 u) (V2568e10_2E0 u) (V2569e11_2E0 u) (V2570e12_2E0 u) (V2571e13_2E0 u) (V2572e14_2E0 u) (V2573e15_2E0 u) (V2574e16_2E0 u) (V2575e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2559e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2560e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2561e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2562e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2563e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2564e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2565e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2566e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2567e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2568e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2569e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2570e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2571e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2572e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2573e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2574e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2575e17_2E0)) (_let_1 V2558l_27_2E0))))))))))))))))))))))))))))))))))))))) (_let_21 _let_43)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_39) _let_3) (exists ((V2576l_27_2E0 u) (V2577e1_2E0 u) (V2578e2_2E0 u) (V2579e3_2E0 u) (V2580e4_2E0 u) (V2581e5_2E0 u) (V2582e6_2E0 u) (V2583e7_2E0 u) (V2584e8_2E0 u) (V2585e9_2E0 u) (V2586e10_2E0 u) (V2587e11_2E0 u) (V2588e12_2E0 u) (V2589e13_2E0 u) (V2590e14_2E0 u) (V2591e15_2E0 u) (V2592e16_2E0 u) (V2593e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2577e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2578e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2579e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2580e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2581e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2582e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2583e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2584e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2585e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2586e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2587e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2588e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2589e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2590e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2591e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2592e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2593e17_2E0)) (_let_1 V2576l_27_2E0)))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_45) (exists ((V2666l_27_2E0 u) (V2667e1_2E0 u) (V2668e2_2E0 u) (V2669e3_2E0 u) (V2670e4_2E0 u) (V2671e5_2E0 u) (V2672e6_2E0 u) (V2673e7_2E0 u) (V2674e8_2E0 u) (V2675e9_2E0 u) (V2676e10_2E0 u) (V2677e11_2E0 u) (V2678e12_2E0 u) (V2679e13_2E0 u) (V2680e14_2E0 u) (V2681e15_2E0 u) (V2682e16_2E0 u) (V2683e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2666l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2667e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2668e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2669e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2670e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2671e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2672e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2673e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2674e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2675e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2676e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2677e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2678e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2679e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2680e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2681e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2682e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2683e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_3 _let_45) (exists ((V2720l_27_2E0 u) (V2721e1_2E0 u) (V2722e2_2E0 u) (V2723e3_2E0 u) (V2724e4_2E0 u) (V2725e5_2E0 u) (V2726e6_2E0 u) (V2727e7_2E0 u) (V2728e8_2E0 u) (V2729e9_2E0 u) (V2730e10_2E0 u) (V2731e11_2E0 u) (V2732e12_2E0 u) (V2733e13_2E0 u) (V2734e14_2E0 u) (V2735e15_2E0 u) (V2736e16_2E0 u) (V2737e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2720l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2721e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2722e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2723e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2724e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2725e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2726e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2727e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2728e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2729e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2730e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2731e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2732e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2733e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2734e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2735e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2736e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2737e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V2756e1_2E0 u) (V2757e2_2E0 u) (V2758e3_2E0 u) (V2759e4_2E0 u) (V2760e5_2E0 u) (V2761e6_2E0 u) (V2762e7_2E0 u) (V2763e8_2E0 u) (V2764e9_2E0 u) (V2765e10_2E0 u) (V2766e11_2E0 u) (V2767e12_2E0 u) (V2768e13_2E0 u) (V2769e14_2E0 u) (V2770e15_2E0 u) (V2771e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2756e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2757e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2758e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2759e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2760e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2761e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2762e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2763e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2764e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2765e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2766e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2767e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2768e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2769e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2770e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2771e16_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))) (= _let_3 _let_43)) (= (exists ((V2772e1_2E0 u) (V2773e2_2E0 u) (V2774e3_2E0 u) (V2775e4_2E0 u) (V2776e5_2E0 u) (V2777e6_2E0 u) (V2778e7_2E0 u) (V2779e8_2E0 u) (V2780e9_2E0 u) (V2781e10_2E0 u) (V2782e11_2E0 u) (V2783e12_2E0 u) (V2784e13_2E0 u) (V2785e14_2E0 u) (V2786e15_2E0 u) (V2787e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2772e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2773e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2774e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2775e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2776e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2777e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2778e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2779e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2780e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2781e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2782e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2783e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2784e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2785e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2786e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2787e16_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))) (= _let_43 _let_3)) (= (exists ((V2805l_27_2E0 u) (V2806e1_2E0 u) (V2807e2_2E0 u) (V2808e3_2E0 u) (V2809e4_2E0 u) (V2810e5_2E0 u) (V2811e6_2E0 u) (V2812e7_2E0 u) (V2813e8_2E0 u) (V2814e9_2E0 u) (V2815e10_2E0 u) (V2816e11_2E0 u) (V2817e12_2E0 u) (V2818e13_2E0 u) (V2819e14_2E0 u) (V2820e15_2E0 u) (V2821e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2806e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2807e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2808e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2809e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2810e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2811e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2812e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2813e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2814e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2815e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2816e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2817e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2818e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2819e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2820e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2821e16_2E0)) (_let_1 V2805l_27_2E0))))))))))))))))))))))))))))))))))))) (_let_21 _let_46)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_43) _let_3) (exists ((V2822l_27_2E0 u) (V2823e1_2E0 u) (V2824e2_2E0 u) (V2825e3_2E0 u) (V2826e4_2E0 u) (V2827e5_2E0 u) (V2828e6_2E0 u) (V2829e7_2E0 u) (V2830e8_2E0 u) (V2831e9_2E0 u) (V2832e10_2E0 u) (V2833e11_2E0 u) (V2834e12_2E0 u) (V2835e13_2E0 u) (V2836e14_2E0 u) (V2837e15_2E0 u) (V2838e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2823e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2824e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2825e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2826e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2827e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2828e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2829e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2830e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2831e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2832e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2833e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2834e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2835e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2836e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2837e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2838e16_2E0)) (_let_1 V2822l_27_2E0)))))))))))))))))))))))))))))))))))))) (= (exists ((V2856l_27_2E0 u) (V2857e1_2E0 u) (V2858e2_2E0 u) (V2859e3_2E0 u) (V2860e4_2E0 u) (V2861e5_2E0 u) (V2862e6_2E0 u) (V2863e7_2E0 u) (V2864e8_2E0 u) (V2865e9_2E0 u) (V2866e10_2E0 u) (V2867e11_2E0 u) (V2868e12_2E0 u) (V2869e13_2E0 u) (V2870e14_2E0 u) (V2871e15_2E0 u) (V2872e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2856l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2857e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2858e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2859e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2860e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2861e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2862e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2863e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2864e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2865e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2866e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2867e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2868e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2869e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2870e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2871e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2872e16_2E0)) _let_2))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_48) _let_3)) (= (exists ((V2873l_27_2E0 u) (V2874e1_2E0 u) (V2875e2_2E0 u) (V2876e3_2E0 u) (V2877e4_2E0 u) (V2878e5_2E0 u) (V2879e6_2E0 u) (V2880e7_2E0 u) (V2881e8_2E0 u) (V2882e9_2E0 u) (V2883e10_2E0 u) (V2884e11_2E0 u) (V2885e12_2E0 u) (V2886e13_2E0 u) (V2887e14_2E0 u) (V2888e15_2E0 u) (V2889e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2873l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2874e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2875e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2876e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2877e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2878e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2879e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2880e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2881e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2882e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2883e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2884e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2885e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2886e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2887e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2888e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2889e16_2E0)) _let_2))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_48)) (= (exists ((V2890l_27_2E0 u) (V2891e1_2E0 u) (V2892e2_2E0 u) (V2893e3_2E0 u) (V2894e4_2E0 u) (V2895e5_2E0 u) (V2896e6_2E0 u) (V2897e7_2E0 u) (V2898e8_2E0 u) (V2899e9_2E0 u) (V2900e10_2E0 u) (V2901e11_2E0 u) (V2902e12_2E0 u) (V2903e13_2E0 u) (V2904e14_2E0 u) (V2905e15_2E0 u) (V2906e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2890l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2891e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2892e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2893e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2894e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2895e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2896e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2897e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2898e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2899e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2900e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2901e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2902e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2903e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2904e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2905e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2906e16_2E0)) _let_2)))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_47) _let_3)) (= (exists ((V2958l_27_2E0 u) (V2959e1_2E0 u) (V2960e2_2E0 u) (V2961e3_2E0 u) (V2962e4_2E0 u) (V2963e5_2E0 u) (V2964e6_2E0 u) (V2965e7_2E0 u) (V2966e8_2E0 u) (V2967e9_2E0 u) (V2968e10_2E0 u) (V2969e11_2E0 u) (V2970e12_2E0 u) (V2971e13_2E0 u) (V2972e14_2E0 u) (V2973e15_2E0 u) (V2974e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2958l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2959e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2960e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2961e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2962e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2963e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2964e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2965e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2966e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2967e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2968e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2969e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2970e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2971e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2972e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2973e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2974e16_2E0)) _let_2)))))))))))))))))))))))))))))))))))))) (= _let_3 _let_47)) (= (exists ((V2975l_27_2E0 u) (V2976e1_2E0 u) (V2977e2_2E0 u) (V2978e3_2E0 u) (V2979e4_2E0 u) (V2980e5_2E0 u) (V2981e6_2E0 u) (V2982e7_2E0 u) (V2983e8_2E0 u) (V2984e9_2E0 u) (V2985e10_2E0 u) (V2986e11_2E0 u) (V2987e12_2E0 u) (V2988e13_2E0 u) (V2989e14_2E0 u) (V2990e15_2E0 u) (V2991e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2975l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2976e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2977e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2978e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2979e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2980e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2981e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2982e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2983e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2984e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2985e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2986e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2987e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2988e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2989e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2990e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2991e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_47 _let_3)) (= (exists ((V2992e1_2E0 u) (V2993e2_2E0 u) (V2994e3_2E0 u) (V2995e4_2E0 u) (V2996e5_2E0 u) (V2997e6_2E0 u) (V2998e7_2E0 u) (V2999e8_2E0 u) (V3000e9_2E0 u) (V3001e10_2E0 u) (V3002e11_2E0 u) (V3003e12_2E0 u) (V3004e13_2E0 u) (V3005e14_2E0 u) (V3006e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2992e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2993e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2994e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2995e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2996e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2997e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2998e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2999e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3000e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3001e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3002e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3003e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3004e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3005e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3006e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))) (= _let_3 _let_46)) (= (exists ((V3007e1_2E0 u) (V3008e2_2E0 u) (V3009e3_2E0 u) (V3010e4_2E0 u) (V3011e5_2E0 u) (V3012e6_2E0 u) (V3013e7_2E0 u) (V3014e8_2E0 u) (V3015e9_2E0 u) (V3016e10_2E0 u) (V3017e11_2E0 u) (V3018e12_2E0 u) (V3019e13_2E0 u) (V3020e14_2E0 u) (V3021e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3007e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3008e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3009e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3010e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3011e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3012e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3013e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3014e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3015e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3016e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3017e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3018e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3019e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3020e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3021e15_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))) (= _let_46 _let_3)) (= (_let_21 _let_50) (exists ((V3038l_27_2E0 u) (V3039e1_2E0 u) (V3040e2_2E0 u) (V3041e3_2E0 u) (V3042e4_2E0 u) (V3043e5_2E0 u) (V3044e6_2E0 u) (V3045e7_2E0 u) (V3046e8_2E0 u) (V3047e9_2E0 u) (V3048e10_2E0 u) (V3049e11_2E0 u) (V3050e12_2E0 u) (V3051e13_2E0 u) (V3052e14_2E0 u) (V3053e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3039e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3040e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3041e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3042e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3043e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3044e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3045e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3046e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3047e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3048e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3049e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3050e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3051e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3052e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3053e15_2E0)) (_let_1 V3038l_27_2E0)))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_94) _let_3) (exists ((V3086l_27_2E0 u) (V3087e1_2E0 u) (V3088e2_2E0 u) (V3089e3_2E0 u) (V3090e4_2E0 u) (V3091e5_2E0 u) (V3092e6_2E0 u) (V3093e7_2E0 u) (V3094e8_2E0 u) (V3095e9_2E0 u) (V3096e10_2E0 u) (V3097e11_2E0 u) (V3098e12_2E0 u) (V3099e13_2E0 u) (V3100e14_2E0 u) (V3101e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3086l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3087e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3088e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3089e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3090e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3091e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3092e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3093e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3094e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3095e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3096e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3097e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3098e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3099e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3100e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3101e15_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (exists ((V3102l_27_2E0 u) (V3103e1_2E0 u) (V3104e2_2E0 u) (V3105e3_2E0 u) (V3106e4_2E0 u) (V3107e5_2E0 u) (V3108e6_2E0 u) (V3109e7_2E0 u) (V3110e8_2E0 u) (V3111e9_2E0 u) (V3112e10_2E0 u) (V3113e11_2E0 u) (V3114e12_2E0 u) (V3115e13_2E0 u) (V3116e14_2E0 u) (V3117e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3102l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3103e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3104e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3105e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3106e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3107e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3108e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3109e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3110e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3111e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3112e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3113e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3114e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3115e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3116e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3117e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) (_let_11 _let_94)) (= (exists ((V3118l_27_2E0 u) (V3119e1_2E0 u) (V3120e2_2E0 u) (V3121e3_2E0 u) (V3122e4_2E0 u) (V3123e5_2E0 u) (V3124e6_2E0 u) (V3125e7_2E0 u) (V3126e8_2E0 u) (V3127e9_2E0 u) (V3128e10_2E0 u) (V3129e11_2E0 u) (V3130e12_2E0 u) (V3131e13_2E0 u) (V3132e14_2E0 u) (V3133e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3118l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3119e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3120e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3121e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3122e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3123e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3124e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3125e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3126e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3127e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3128e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3129e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3130e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3131e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3132e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3133e15_2E0)) _let_2)))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_51) _let_3)) (= (= _let_3 _let_94) (exists ((V3150l_27_2E0 u) (V3151e1_2E0 u) (V3152e2_2E0 u) (V3153e3_2E0 u) (V3154e4_2E0 u) (V3155e5_2E0 u) (V3156e6_2E0 u) (V3157e7_2E0 u) (V3158e8_2E0 u) (V3159e9_2E0 u) (V3160e10_2E0 u) (V3161e11_2E0 u) (V3162e12_2E0 u) (V3163e13_2E0 u) (V3164e14_2E0 u) (V3165e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3150l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3151e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3152e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3153e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3154e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3155e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3156e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3157e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3158e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3159e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3160e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3161e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3162e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3163e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3164e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3165e15_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (= _let_94 _let_3) (exists ((V3166l_27_2E0 u) (V3167e1_2E0 u) (V3168e2_2E0 u) (V3169e3_2E0 u) (V3170e4_2E0 u) (V3171e5_2E0 u) (V3172e6_2E0 u) (V3173e7_2E0 u) (V3174e8_2E0 u) (V3175e9_2E0 u) (V3176e10_2E0 u) (V3177e11_2E0 u) (V3178e12_2E0 u) (V3179e13_2E0 u) (V3180e14_2E0 u) (V3181e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3166l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3167e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3168e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3169e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3170e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3171e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3172e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3173e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3174e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3175e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3176e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3177e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3178e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3179e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3180e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3181e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_51) (exists ((V3182l_27_2E0 u) (V3183e1_2E0 u) (V3184e2_2E0 u) (V3185e3_2E0 u) (V3186e4_2E0 u) (V3187e5_2E0 u) (V3188e6_2E0 u) (V3189e7_2E0 u) (V3190e8_2E0 u) (V3191e9_2E0 u) (V3192e10_2E0 u) (V3193e11_2E0 u) (V3194e12_2E0 u) (V3195e13_2E0 u) (V3196e14_2E0 u) (V3197e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3182l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3191e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3192e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3193e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3194e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3195e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3196e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3197e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_51 _let_3) (exists ((V3198l_27_2E0 u) (V3199e1_2E0 u) (V3200e2_2E0 u) (V3201e3_2E0 u) (V3202e4_2E0 u) (V3203e5_2E0 u) (V3204e6_2E0 u) (V3205e7_2E0 u) (V3206e8_2E0 u) (V3207e9_2E0 u) (V3208e10_2E0 u) (V3209e11_2E0 u) (V3210e12_2E0 u) (V3211e13_2E0 u) (V3212e14_2E0 u) (V3213e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3198l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3199e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3200e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3201e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3202e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3203e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3204e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3205e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3206e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3207e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3208e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3209e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3210e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3211e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3212e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3213e15_2E0)) _let_2))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_52) _let_3) (exists ((V3242l_27_2E0 u) (V3243e1_2E0 u) (V3244e2_2E0 u) (V3245e3_2E0 u) (V3246e4_2E0 u) (V3247e5_2E0 u) (V3248e6_2E0 u) (V3249e7_2E0 u) (V3250e8_2E0 u) (V3251e9_2E0 u) (V3252e10_2E0 u) (V3253e11_2E0 u) (V3254e12_2E0 u) (V3255e13_2E0 u) (V3256e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3243e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3244e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3245e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3246e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3247e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3248e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3249e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3250e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3251e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3252e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3253e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3254e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3255e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3256e14_2E0)) (_let_1 V3242l_27_2E0)))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_50) _let_3) (exists ((V3272l_27_2E0 u) (V3273e1_2E0 u) (V3274e2_2E0 u) (V3275e3_2E0 u) (V3276e4_2E0 u) (V3277e5_2E0 u) (V3278e6_2E0 u) (V3279e7_2E0 u) (V3280e8_2E0 u) (V3281e9_2E0 u) (V3282e10_2E0 u) (V3283e11_2E0 u) (V3284e12_2E0 u) (V3285e13_2E0 u) (V3286e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3273e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3274e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3275e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3276e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3277e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3278e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3279e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3280e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3281e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3282e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3283e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3284e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3285e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3286e14_2E0)) (_let_1 V3272l_27_2E0)))))))))))))))))))))))))))))))))) (= (_let_11 _let_50) (exists ((V3287l_27_2E0 u) (V3288e1_2E0 u) (V3289e2_2E0 u) (V3290e3_2E0 u) (V3291e4_2E0 u) (V3292e5_2E0 u) (V3293e6_2E0 u) (V3294e7_2E0 u) (V3295e8_2E0 u) (V3296e9_2E0 u) (V3297e10_2E0 u) (V3298e11_2E0 u) (V3299e12_2E0 u) (V3300e13_2E0 u) (V3301e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3288e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3289e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3290e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3291e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3292e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3293e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3294e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3295e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3296e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3297e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3298e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3299e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3300e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3301e14_2E0)) (_let_1 V3287l_27_2E0)))))))))))))))))))))))))))))))))) (= (exists ((V3302l_27_2E0 u) (V3303e1_2E0 u) (V3304e2_2E0 u) (V3305e3_2E0 u) (V3306e4_2E0 u) (V3307e5_2E0 u) (V3308e6_2E0 u) (V3309e7_2E0 u) (V3310e8_2E0 u) (V3311e9_2E0 u) (V3312e10_2E0 u) (V3313e11_2E0 u) (V3314e12_2E0 u) (V3315e13_2E0 u) (V3316e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3302l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3303e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3304e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3305e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3306e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3307e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3308e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3309e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3310e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3311e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3312e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3313e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3314e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3315e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3316e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_53) _let_3)) (= (exists ((V3332l_27_2E0 u) (V3333e1_2E0 u) (V3334e2_2E0 u) (V3335e3_2E0 u) (V3336e4_2E0 u) (V3337e5_2E0 u) (V3338e6_2E0 u) (V3339e7_2E0 u) (V3340e8_2E0 u) (V3341e9_2E0 u) (V3342e10_2E0 u) (V3343e11_2E0 u) (V3344e12_2E0 u) (V3345e13_2E0 u) (V3346e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3332l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3333e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3334e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3335e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3336e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3337e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3338e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3339e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3340e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3341e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3342e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3343e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3344e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3345e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3346e14_2E0)) _let_2)))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_54) _let_3)) (= (exists ((V3392l_27_2E0 u) (V3393e1_2E0 u) (V3394e2_2E0 u) (V3395e3_2E0 u) (V3396e4_2E0 u) (V3397e5_2E0 u) (V3398e6_2E0 u) (V3399e7_2E0 u) (V3400e8_2E0 u) (V3401e9_2E0 u) (V3402e10_2E0 u) (V3403e11_2E0 u) (V3404e12_2E0 u) (V3405e13_2E0 u) (V3406e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3392l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3393e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3394e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3395e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3396e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3397e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3398e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3399e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3400e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3401e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3402e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3403e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3404e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3405e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3406e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_54)) (= (= _let_54 _let_3) (exists ((V3407l_27_2E0 u) (V3408e1_2E0 u) (V3409e2_2E0 u) (V3410e3_2E0 u) (V3411e4_2E0 u) (V3412e5_2E0 u) (V3413e6_2E0 u) (V3414e7_2E0 u) (V3415e8_2E0 u) (V3416e9_2E0 u) (V3417e10_2E0 u) (V3418e11_2E0 u) (V3419e12_2E0 u) (V3420e13_2E0 u) (V3421e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3407l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3408e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3409e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3410e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3411e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3412e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3413e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3414e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3415e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3416e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3417e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3418e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3419e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3420e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3421e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_52 _let_3) (exists ((V3435e1_2E0 u) (V3436e2_2E0 u) (V3437e3_2E0 u) (V3438e4_2E0 u) (V3439e5_2E0 u) (V3440e6_2E0 u) (V3441e7_2E0 u) (V3442e8_2E0 u) (V3443e9_2E0 u) (V3444e10_2E0 u) (V3445e11_2E0 u) (V3446e12_2E0 u) (V3447e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3435e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3436e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3437e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3438e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3439e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3440e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3441e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3442e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3443e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3444e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3445e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3446e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3447e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_52) _let_3) (exists ((V3476l_27_2E0 u) (V3477e1_2E0 u) (V3478e2_2E0 u) (V3479e3_2E0 u) (V3480e4_2E0 u) (V3481e5_2E0 u) (V3482e6_2E0 u) (V3483e7_2E0 u) (V3484e8_2E0 u) (V3485e9_2E0 u) (V3486e10_2E0 u) (V3487e11_2E0 u) (V3488e12_2E0 u) (V3489e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3477e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3478e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3479e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3480e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3481e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3482e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3483e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3484e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3485e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3486e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3487e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3488e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3489e13_2E0)) (_let_1 V3476l_27_2E0)))))))))))))))))))))))))))))))) (= (exists ((V3504l_27_2E0 u) (V3505e1_2E0 u) (V3506e2_2E0 u) (V3507e3_2E0 u) (V3508e4_2E0 u) (V3509e5_2E0 u) (V3510e6_2E0 u) (V3511e7_2E0 u) (V3512e8_2E0 u) (V3513e9_2E0 u) (V3514e10_2E0 u) (V3515e11_2E0 u) (V3516e12_2E0 u) (V3517e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3504l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3505e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3506e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3507e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3508e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3509e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3510e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3511e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3512e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3513e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3514e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3515e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3516e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3517e13_2E0)) _let_2)))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_56) _let_3)) (= (exists ((V3560l_27_2E0 u) (V3561e1_2E0 u) (V3562e2_2E0 u) (V3563e3_2E0 u) (V3564e4_2E0 u) (V3565e5_2E0 u) (V3566e6_2E0 u) (V3567e7_2E0 u) (V3568e8_2E0 u) (V3569e9_2E0 u) (V3570e10_2E0 u) (V3571e11_2E0 u) (V3572e12_2E0 u) (V3573e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3560l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3561e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3562e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3563e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3564e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3565e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3566e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3567e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3568e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3569e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3570e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3571e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3572e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3573e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_3 _let_56)) (= (exists ((V3588l_27_2E0 u) (V3589e1_2E0 u) (V3590e2_2E0 u) (V3591e3_2E0 u) (V3592e4_2E0 u) (V3593e5_2E0 u) (V3594e6_2E0 u) (V3595e7_2E0 u) (V3596e8_2E0 u) (V3597e9_2E0 u) (V3598e10_2E0 u) (V3599e11_2E0 u) (V3600e12_2E0 u) (V3601e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3588l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3589e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3590e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3591e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3592e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3593e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3594e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3595e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3596e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3597e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3598e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3599e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3600e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3601e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (= _let_3 _let_57)) (= (= _let_57 _let_3) (exists ((V3602l_27_2E0 u) (V3603e1_2E0 u) (V3604e2_2E0 u) (V3605e3_2E0 u) (V3606e4_2E0 u) (V3607e5_2E0 u) (V3608e6_2E0 u) (V3609e7_2E0 u) (V3610e8_2E0 u) (V3611e9_2E0 u) (V3612e10_2E0 u) (V3613e11_2E0 u) (V3614e12_2E0 u) (V3615e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3602l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3603e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3604e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3605e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3606e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3607e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3608e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3609e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3610e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3611e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3612e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3613e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3614e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3615e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_58) _let_3) (exists ((V3640l_27_2E0 u) (V3641e1_2E0 u) (V3642e2_2E0 u) (V3643e3_2E0 u) (V3644e4_2E0 u) (V3645e5_2E0 u) (V3646e6_2E0 u) (V3647e7_2E0 u) (V3648e8_2E0 u) (V3649e9_2E0 u) (V3650e10_2E0 u) (V3651e11_2E0 u) (V3652e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3641e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3642e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3643e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3644e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3645e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3646e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3647e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3648e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3649e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3650e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3651e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3652e12_2E0)) (_let_1 V3640l_27_2E0)))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_60) _let_3) (exists ((V3718l_27_2E0 u) (V3719e1_2E0 u) (V3720e2_2E0 u) (V3721e3_2E0 u) (V3722e4_2E0 u) (V3723e5_2E0 u) (V3724e6_2E0 u) (V3725e7_2E0 u) (V3726e8_2E0 u) (V3727e9_2E0 u) (V3728e10_2E0 u) (V3729e11_2E0 u) (V3730e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3718l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3719e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3720e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3721e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3722e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3723e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3724e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3725e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3726e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3727e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3728e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3729e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3730e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (= _let_3 _let_59) (exists ((V3744l_27_2E0 u) (V3745e1_2E0 u) (V3746e2_2E0 u) (V3747e3_2E0 u) (V3748e4_2E0 u) (V3749e5_2E0 u) (V3750e6_2E0 u) (V3751e7_2E0 u) (V3752e8_2E0 u) (V3753e9_2E0 u) (V3754e10_2E0 u) (V3755e11_2E0 u) (V3756e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3744l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3745e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3746e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3747e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3748e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3749e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3750e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3751e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3752e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3753e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3754e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3755e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3756e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (exists ((V3770l_27_2E0 u) (V3771e1_2E0 u) (V3772e2_2E0 u) (V3773e3_2E0 u) (V3774e4_2E0 u) (V3775e5_2E0 u) (V3776e6_2E0 u) (V3777e7_2E0 u) (V3778e8_2E0 u) (V3779e9_2E0 u) (V3780e10_2E0 u) (V3781e11_2E0 u) (V3782e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3770l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3771e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3772e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3773e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3774e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3775e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3776e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3777e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3778e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3779e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3780e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3781e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3782e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_60)) (= (= _let_58 _let_3) (exists ((V3807e1_2E0 u) (V3808e2_2E0 u) (V3809e3_2E0 u) (V3810e4_2E0 u) (V3811e5_2E0 u) (V3812e6_2E0 u) (V3813e7_2E0 u) (V3814e8_2E0 u) (V3815e9_2E0 u) (V3816e10_2E0 u) (V3817e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3807e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3808e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3809e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3810e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3811e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3812e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3813e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3814e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3815e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3816e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3817e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))) (= (_let_21 _let_61) (exists ((V3830l_27_2E0 u) (V3831e1_2E0 u) (V3832e2_2E0 u) (V3833e3_2E0 u) (V3834e4_2E0 u) (V3835e5_2E0 u) (V3836e6_2E0 u) (V3837e7_2E0 u) (V3838e8_2E0 u) (V3839e9_2E0 u) (V3840e10_2E0 u) (V3841e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3831e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3832e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3833e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3834e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3835e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3836e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3837e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3838e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3839e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3840e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3841e11_2E0)) (_let_1 V3830l_27_2E0)))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_58) _let_3) (exists ((V3842l_27_2E0 u) (V3843e1_2E0 u) (V3844e2_2E0 u) (V3845e3_2E0 u) (V3846e4_2E0 u) (V3847e5_2E0 u) (V3848e6_2E0 u) (V3849e7_2E0 u) (V3850e8_2E0 u) (V3851e9_2E0 u) (V3852e10_2E0 u) (V3853e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3843e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3844e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3845e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3846e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3847e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3848e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3849e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3850e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3851e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3852e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3853e11_2E0)) (_let_1 V3842l_27_2E0)))))))))))))))))))))))))))) (= (exists ((V3854l_27_2E0 u) (V3855e1_2E0 u) (V3856e2_2E0 u) (V3857e3_2E0 u) (V3858e4_2E0 u) (V3859e5_2E0 u) (V3860e6_2E0 u) (V3861e7_2E0 u) (V3862e8_2E0 u) (V3863e9_2E0 u) (V3864e10_2E0 u) (V3865e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3855e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3856e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3857e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3858e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3859e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3860e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3861e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3862e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3863e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3864e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3865e11_2E0)) (_let_1 V3854l_27_2E0))))))))))))))))))))))))))) (_let_11 _let_58)) (= (exists ((V3890l_27_2E0 u) (V3891e1_2E0 u) (V3892e2_2E0 u) (V3893e3_2E0 u) (V3894e4_2E0 u) (V3895e5_2E0 u) (V3896e6_2E0 u) (V3897e7_2E0 u) (V3898e8_2E0 u) (V3899e9_2E0 u) (V3900e10_2E0 u) (V3901e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3890l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3891e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3892e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3893e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3894e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3895e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3896e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3897e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3898e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3899e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3900e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3901e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_63) _let_3)) (= (exists ((V3902l_27_2E0 u) (V3903e1_2E0 u) (V3904e2_2E0 u) (V3905e3_2E0 u) (V3906e4_2E0 u) (V3907e5_2E0 u) (V3908e6_2E0 u) (V3909e7_2E0 u) (V3910e8_2E0 u) (V3911e9_2E0 u) (V3912e10_2E0 u) (V3913e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3902l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3903e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3904e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3905e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3906e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3907e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3908e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3909e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3910e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3911e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3912e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3913e11_2E0)) _let_2)))))))))))))))))))))))))))) (_let_11 _let_63)) (= (= _let_3 _let_62) (exists ((V3914l_27_2E0 u) (V3915e1_2E0 u) (V3916e2_2E0 u) (V3917e3_2E0 u) (V3918e4_2E0 u) (V3919e5_2E0 u) (V3920e6_2E0 u) (V3921e7_2E0 u) (V3922e8_2E0 u) (V3923e9_2E0 u) (V3924e10_2E0 u) (V3925e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3914l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3915e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3916e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3917e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3918e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3919e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3920e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3921e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3922e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3923e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3924e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3925e11_2E0)) _let_2))))))))))))))))))))))))))))) (= (= _let_62 _let_3) (exists ((V3926l_27_2E0 u) (V3927e1_2E0 u) (V3928e2_2E0 u) (V3929e3_2E0 u) (V3930e4_2E0 u) (V3931e5_2E0 u) (V3932e6_2E0 u) (V3933e7_2E0 u) (V3934e8_2E0 u) (V3935e9_2E0 u) (V3936e10_2E0 u) (V3937e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3926l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3927e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3928e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3929e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3930e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3931e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3932e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3933e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3934e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3935e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3936e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3937e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V3950l_27_2E0 u) (V3951e1_2E0 u) (V3952e2_2E0 u) (V3953e3_2E0 u) (V3954e4_2E0 u) (V3955e5_2E0 u) (V3956e6_2E0 u) (V3957e7_2E0 u) (V3958e8_2E0 u) (V3959e9_2E0 u) (V3960e10_2E0 u) (V3961e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3950l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3951e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3952e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3953e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3954e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3955e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3956e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3957e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3958e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3959e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3960e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3961e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_63 _let_3)) (= (exists ((V3962e1_2E0 u) (V3963e2_2E0 u) (V3964e3_2E0 u) (V3965e4_2E0 u) (V3966e5_2E0 u) (V3967e6_2E0 u) (V3968e7_2E0 u) (V3969e8_2E0 u) (V3970e9_2E0 u) (V3971e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3962e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3963e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3964e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3965e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3966e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3967e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3968e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3969e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3970e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3971e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))) (= _let_3 _let_61)) (= (exists ((V3982l_27_2E0 u) (V3983e1_2E0 u) (V3984e2_2E0 u) (V3985e3_2E0 u) (V3986e4_2E0 u) (V3987e5_2E0 u) (V3988e6_2E0 u) (V3989e7_2E0 u) (V3990e8_2E0 u) (V3991e9_2E0 u) (V3992e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3983e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3984e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3985e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3986e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3987e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3988e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3989e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3990e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3991e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3992e10_2E0)) (_let_1 V3982l_27_2E0))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_67) _let_3)) (= (_let_21 _let_67) (exists ((V3993l_27_2E0 u) (V3994e1_2E0 u) (V3995e2_2E0 u) (V3996e3_2E0 u) (V3997e4_2E0 u) (V3998e5_2E0 u) (V3999e6_2E0 u) (V4000e7_2E0 u) (V4001e8_2E0 u) (V4002e9_2E0 u) (V4003e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3994e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3995e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3996e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3997e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3998e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3999e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4000e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4001e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4002e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4003e10_2E0)) (_let_1 V3993l_27_2E0)))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_61) _let_3) (exists ((V4004l_27_2E0 u) (V4005e1_2E0 u) (V4006e2_2E0 u) (V4007e3_2E0 u) (V4008e4_2E0 u) (V4009e5_2E0 u) (V4010e6_2E0 u) (V4011e7_2E0 u) (V4012e8_2E0 u) (V4013e9_2E0 u) (V4014e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4005e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4006e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4007e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4008e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4009e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4010e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4011e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4012e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4013e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4014e10_2E0)) (_let_1 V4004l_27_2E0)))))))))))))))))))))))))) (= (_let_11 _let_61) (exists ((V4015l_27_2E0 u) (V4016e1_2E0 u) (V4017e2_2E0 u) (V4018e3_2E0 u) (V4019e4_2E0 u) (V4020e5_2E0 u) (V4021e6_2E0 u) (V4022e7_2E0 u) (V4023e8_2E0 u) (V4024e9_2E0 u) (V4025e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4016e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4017e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4018e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4019e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4020e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4021e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4022e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4023e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4024e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4025e10_2E0)) (_let_1 V4015l_27_2E0)))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_65) _let_3) (exists ((V4026l_27_2E0 u) (V4027e1_2E0 u) (V4028e2_2E0 u) (V4029e3_2E0 u) (V4030e4_2E0 u) (V4031e5_2E0 u) (V4032e6_2E0 u) (V4033e7_2E0 u) (V4034e8_2E0 u) (V4035e9_2E0 u) (V4036e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4026l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4027e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4028e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4029e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4030e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4031e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4032e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4033e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4034e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4035e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4036e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_11 _let_65) (exists ((V4037l_27_2E0 u) (V4038e1_2E0 u) (V4039e2_2E0 u) (V4040e3_2E0 u) (V4041e4_2E0 u) (V4042e5_2E0 u) (V4043e6_2E0 u) (V4044e7_2E0 u) (V4045e8_2E0 u) (V4046e9_2E0 u) (V4047e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4037l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4038e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4039e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4040e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4041e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4042e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4043e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4044e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4045e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4046e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4047e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_65 _let_3) (exists ((V4081l_27_2E0 u) (V4082e1_2E0 u) (V4083e2_2E0 u) (V4084e3_2E0 u) (V4085e4_2E0 u) (V4086e5_2E0 u) (V4087e6_2E0 u) (V4088e7_2E0 u) (V4089e8_2E0 u) (V4090e9_2E0 u) (V4091e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4081l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4082e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4083e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4084e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4085e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4086e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4087e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4088e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4089e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4090e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4091e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_67) (exists ((V4114e1_2E0 u) (V4115e2_2E0 u) (V4116e3_2E0 u) (V4117e4_2E0 u) (V4118e5_2E0 u) (V4119e6_2E0 u) (V4120e7_2E0 u) (V4121e8_2E0 u) (V4122e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4114e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4115e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4116e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4117e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4118e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4119e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4120e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4121e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4122e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))) (= (exists ((V4123e1_2E0 u) (V4124e2_2E0 u) (V4125e3_2E0 u) (V4126e4_2E0 u) (V4127e5_2E0 u) (V4128e6_2E0 u) (V4129e7_2E0 u) (V4130e8_2E0 u) (V4131e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4123e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4124e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4125e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4126e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4127e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4128e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4129e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4130e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4131e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (= _let_67 _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_66) _let_3) (exists ((V4132l_27_2E0 u) (V4133e1_2E0 u) (V4134e2_2E0 u) (V4135e3_2E0 u) (V4136e4_2E0 u) (V4137e5_2E0 u) (V4138e6_2E0 u) (V4139e7_2E0 u) (V4140e8_2E0 u) (V4141e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4133e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4134e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4135e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4136e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4137e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4138e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4139e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4140e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4141e9_2E0)) (_let_1 V4132l_27_2E0)))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_67) _let_3) (exists ((V4152l_27_2E0 u) (V4153e1_2E0 u) (V4154e2_2E0 u) (V4155e3_2E0 u) (V4156e4_2E0 u) (V4157e5_2E0 u) (V4158e6_2E0 u) (V4159e7_2E0 u) (V4160e8_2E0 u) (V4161e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4153e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4154e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4155e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4156e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4157e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4158e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4159e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4160e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4161e9_2E0)) (_let_1 V4152l_27_2E0)))))))))))))))))))))))) (= (exists ((V4172l_27_2E0 u) (V4173e1_2E0 u) (V4174e2_2E0 u) (V4175e3_2E0 u) (V4176e4_2E0 u) (V4177e5_2E0 u) (V4178e6_2E0 u) (V4179e7_2E0 u) (V4180e8_2E0 u) (V4181e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4172l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4173e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4174e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4175e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4176e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4177e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4178e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4179e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4180e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4181e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_69) _let_3)) (= (_let_11 _let_69) (exists ((V4182l_27_2E0 u) (V4183e1_2E0 u) (V4184e2_2E0 u) (V4185e3_2E0 u) (V4186e4_2E0 u) (V4187e5_2E0 u) (V4188e6_2E0 u) (V4189e7_2E0 u) (V4190e8_2E0 u) (V4191e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4182l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4191e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_68) _let_3) (exists ((V4192l_27_2E0 u) (V4193e1_2E0 u) (V4194e2_2E0 u) (V4195e3_2E0 u) (V4196e4_2E0 u) (V4197e5_2E0 u) (V4198e6_2E0 u) (V4199e7_2E0 u) (V4200e8_2E0 u) (V4201e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4192l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4193e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4194e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4195e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4196e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4197e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4198e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4199e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4200e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4201e9_2E0)) _let_2))))))))))))))))))))))))) (= (exists ((V4222l_27_2E0 u) (V4223e1_2E0 u) (V4224e2_2E0 u) (V4225e3_2E0 u) (V4226e4_2E0 u) (V4227e5_2E0 u) (V4228e6_2E0 u) (V4229e7_2E0 u) (V4230e8_2E0 u) (V4231e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4222l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4223e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4224e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4225e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4226e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4227e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4228e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4229e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4230e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4231e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_69 _let_3)) (= (exists ((V4242l_27_2E0 u) (V4243e1_2E0 u) (V4244e2_2E0 u) (V4245e3_2E0 u) (V4246e4_2E0 u) (V4247e5_2E0 u) (V4248e6_2E0 u) (V4249e7_2E0 u) (V4250e8_2E0 u) (V4251e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4242l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4243e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4244e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4245e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4246e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4247e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4248e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4249e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4250e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4251e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_68 _let_3)) (= (exists ((V4252e1_2E0 u) (V4253e2_2E0 u) (V4254e3_2E0 u) (V4255e4_2E0 u) (V4256e5_2E0 u) (V4257e6_2E0 u) (V4258e7_2E0 u) (V4259e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4252e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4253e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4254e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4255e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4256e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4257e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4258e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4259e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_3 _let_66)) (= (exists ((V4268l_27_2E0 u) (V4269e1_2E0 u) (V4270e2_2E0 u) (V4271e3_2E0 u) (V4272e4_2E0 u) (V4273e5_2E0 u) (V4274e6_2E0 u) (V4275e7_2E0 u) (V4276e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4269e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4270e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4271e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4272e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4273e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4274e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4275e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4276e8_2E0)) (_let_1 V4268l_27_2E0))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_73) _let_3)) (= (_let_21 _let_73) (exists ((V4277l_27_2E0 u) (V4278e1_2E0 u) (V4279e2_2E0 u) (V4280e3_2E0 u) (V4281e4_2E0 u) (V4282e5_2E0 u) (V4283e6_2E0 u) (V4284e7_2E0 u) (V4285e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4278e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4279e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4280e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4281e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4282e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4283e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4284e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4285e8_2E0)) (_let_1 V4277l_27_2E0)))))))))))))))))))))) (= (exists ((V4313l_27_2E0 u) (V4314e1_2E0 u) (V4315e2_2E0 u) (V4316e3_2E0 u) (V4317e4_2E0 u) (V4318e5_2E0 u) (V4319e6_2E0 u) (V4320e7_2E0 u) (V4321e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4313l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4314e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4315e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4316e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4317e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4318e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4319e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4320e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4321e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_70)) (= (= _let_3 _let_71) (exists ((V4358l_27_2E0 u) (V4359e1_2E0 u) (V4360e2_2E0 u) (V4361e3_2E0 u) (V4362e4_2E0 u) (V4363e5_2E0 u) (V4364e6_2E0 u) (V4365e7_2E0 u) (V4366e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4358l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4359e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4360e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4361e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4362e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4363e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4364e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4365e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4366e8_2E0)) _let_2))))))))))))))))))))))) (= (exists ((V4367l_27_2E0 u) (V4368e1_2E0 u) (V4369e2_2E0 u) (V4370e3_2E0 u) (V4371e4_2E0 u) (V4372e5_2E0 u) (V4373e6_2E0 u) (V4374e7_2E0 u) (V4375e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4367l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4368e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4369e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4370e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4371e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4372e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4373e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4374e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4375e8_2E0)) _let_2)))))))))))))))))))))) (= _let_71 _let_3)) (= (exists ((V4376e1_2E0 u) (V4377e2_2E0 u) (V4378e3_2E0 u) (V4379e4_2E0 u) (V4380e5_2E0 u) (V4381e6_2E0 u) (V4382e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4376e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4377e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4378e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4379e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4380e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4381e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4382e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) (= _let_3 _let_73)) (= (= _let_73 _let_3) (exists ((V4383e1_2E0 u) (V4384e2_2E0 u) (V4385e3_2E0 u) (V4386e4_2E0 u) (V4387e5_2E0 u) (V4388e6_2E0 u) (V4389e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4383e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4384e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4385e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4386e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4387e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4388e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4389e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (_let_21 _let_72) (exists ((V4398l_27_2E0 u) (V4399e1_2E0 u) (V4400e2_2E0 u) (V4401e3_2E0 u) (V4402e4_2E0 u) (V4403e5_2E0 u) (V4404e6_2E0 u) (V4405e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4399e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4400e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4401e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4402e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4403e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4404e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4405e7_2E0)) (_let_1 V4398l_27_2E0)))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_73) _let_3) (exists ((V4406l_27_2E0 u) (V4407e1_2E0 u) (V4408e2_2E0 u) (V4409e3_2E0 u) (V4410e4_2E0 u) (V4411e5_2E0 u) (V4412e6_2E0 u) (V4413e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4407e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4408e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4409e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4410e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4411e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4412e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4413e7_2E0)) (_let_1 V4406l_27_2E0)))))))))))))))))))) (= (exists ((V4462l_27_2E0 u) (V4463e1_2E0 u) (V4464e2_2E0 u) (V4465e3_2E0 u) (V4466e4_2E0 u) (V4467e5_2E0 u) (V4468e6_2E0 u) (V4469e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4462l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4463e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4464e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4465e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4466e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4467e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4468e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4469e7_2E0)) _let_2)))))))))))))))))))) (= _let_74 _let_3)) (= (= _let_3 _let_72) (exists ((V4486e1_2E0 u) (V4487e2_2E0 u) (V4488e3_2E0 u) (V4489e4_2E0 u) (V4490e5_2E0 u) (V4491e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4486e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4487e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4488e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4489e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4490e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4491e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= (= _let_72 _let_3) (exists ((V4492e1_2E0 u) (V4493e2_2E0 u) (V4494e3_2E0 u) (V4495e4_2E0 u) (V4496e5_2E0 u) (V4497e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4492e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4493e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4494e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4495e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4496e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4497e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= (_let_21 _let_76) (exists ((V4505l_27_2E0 u) (V4506e1_2E0 u) (V4507e2_2E0 u) (V4508e3_2E0 u) (V4509e4_2E0 u) (V4510e5_2E0 u) (V4511e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4506e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4507e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4508e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4509e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4510e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4511e6_2E0)) (_let_1 V4505l_27_2E0)))))))))))))))))) (= (exists ((V4512l_27_2E0 u) (V4513e1_2E0 u) (V4514e2_2E0 u) (V4515e3_2E0 u) (V4516e4_2E0 u) (V4517e5_2E0 u) (V4518e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4513e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4514e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4515e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4516e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4517e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4518e6_2E0)) (_let_1 V4512l_27_2E0))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_72) _let_3)) (= (exists ((V4526l_27_2E0 u) (V4527e1_2E0 u) (V4528e2_2E0 u) (V4529e3_2E0 u) (V4530e4_2E0 u) (V4531e5_2E0 u) (V4532e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4526l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4527e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4528e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4529e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4530e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4531e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4532e6_2E0)) _let_2)))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_77) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_78) _let_3) (exists ((V4540l_27_2E0 u) (V4541e1_2E0 u) (V4542e2_2E0 u) (V4543e3_2E0 u) (V4544e4_2E0 u) (V4545e5_2E0 u) (V4546e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4540l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4541e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4542e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4543e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4544e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4545e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4546e6_2E0)) _let_2))))))))))))))))))) (= (_let_11 _let_78) (exists ((V4547l_27_2E0 u) (V4548e1_2E0 u) (V4549e2_2E0 u) (V4550e3_2E0 u) (V4551e4_2E0 u) (V4552e5_2E0 u) (V4553e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4547l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4548e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4549e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4550e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4551e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4552e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4553e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_77 _let_3) (exists ((V4561l_27_2E0 u) (V4562e1_2E0 u) (V4563e2_2E0 u) (V4564e3_2E0 u) (V4565e4_2E0 u) (V4566e5_2E0 u) (V4567e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4561l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4562e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4563e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4564e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4565e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4566e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4567e6_2E0)) _let_2))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V4568l_27_2E0 u) (V4569e1_2E0 u) (V4570e2_2E0 u) (V4571e3_2E0 u) (V4572e4_2E0 u) (V4573e5_2E0 u) (V4574e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4568l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4569e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4570e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4571e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4572e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4573e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4574e6_2E0)) _let_2)))))))))))))))))) (= _let_3 _let_78)) (= (= _let_3 _let_76) (exists ((V4582e1_2E0 u) (V4583e2_2E0 u) (V4584e3_2E0 u) (V4585e4_2E0 u) (V4586e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4582e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4583e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4584e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4585e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4586e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (= _let_76 _let_3) (exists ((V4587e1_2E0 u) (V4588e2_2E0 u) (V4589e3_2E0 u) (V4590e4_2E0 u) (V4591e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4587e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4588e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4589e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4590e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4591e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (_let_21 _let_79) (exists ((V4598l_27_2E0 u) (V4599e1_2E0 u) (V4600e2_2E0 u) (V4601e3_2E0 u) (V4602e4_2E0 u) (V4603e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4599e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4600e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4601e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4602e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4603e5_2E0)) (_let_1 V4598l_27_2E0)))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_76) _let_3) (exists ((V4604l_27_2E0 u) (V4605e1_2E0 u) (V4606e2_2E0 u) (V4607e3_2E0 u) (V4608e4_2E0 u) (V4609e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4605e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4606e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4607e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4608e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4609e5_2E0)) (_let_1 V4604l_27_2E0)))))))))))))))) (= (_let_11 _let_76) (exists ((V4610l_27_2E0 u) (V4611e1_2E0 u) (V4612e2_2E0 u) (V4613e3_2E0 u) (V4614e4_2E0 u) (V4615e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4611e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4612e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4613e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4614e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4615e5_2E0)) (_let_1 V4610l_27_2E0)))))))))))))))) (= (exists ((V4628l_27_2E0 u) (V4629e1_2E0 u) (V4630e2_2E0 u) (V4631e3_2E0 u) (V4632e4_2E0 u) (V4633e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4628l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4629e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4630e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4631e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4632e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4633e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_81) _let_3)) (= (exists ((V4640l_27_2E0 u) (V4641e1_2E0 u) (V4642e2_2E0 u) (V4643e3_2E0 u) (V4644e4_2E0 u) (V4645e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4640l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4641e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4642e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4643e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4644e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4645e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_80)) (= (= _let_3 _let_81) (exists ((V4652l_27_2E0 u) (V4653e1_2E0 u) (V4654e2_2E0 u) (V4655e3_2E0 u) (V4656e4_2E0 u) (V4657e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4652l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4653e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4654e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4655e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4656e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4657e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_81 _let_3) (exists ((V4658l_27_2E0 u) (V4659e1_2E0 u) (V4660e2_2E0 u) (V4661e3_2E0 u) (V4662e4_2E0 u) (V4663e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4658l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4659e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4660e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4661e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4662e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4663e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_79) (exists ((V4664e1_2E0 u) (V4665e2_2E0 u) (V4666e3_2E0 u) (V4667e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4664e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4665e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4666e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4667e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= (exists ((V4677l_27_2E0 u) (V4678e1_2E0 u) (V4679e2_2E0 u) (V4680e3_2E0 u) (V4681e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4678e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4679e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4680e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4681e4_2E0)) (_let_1 V4677l_27_2E0))))))))))))) (_let_21 _let_82)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_79) _let_3) (exists ((V4682l_27_2E0 u) (V4683e1_2E0 u) (V4684e2_2E0 u) (V4685e3_2E0 u) (V4686e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4683e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4684e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4685e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4686e4_2E0)) (_let_1 V4682l_27_2E0)))))))))))))) (= (_let_11 _let_79) (exists ((V4687l_27_2E0 u) (V4688e1_2E0 u) (V4689e2_2E0 u) (V4690e3_2E0 u) (V4691e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4688e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4689e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4690e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4691e4_2E0)) (_let_1 V4687l_27_2E0)))))))))))))) (= (exists ((V4697l_27_2E0 u) (V4698e1_2E0 u) (V4699e2_2E0 u) (V4700e3_2E0 u) (V4701e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4697l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4698e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4699e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4700e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4701e4_2E0)) _let_2)))))))))))))) (_let_11 _let_83)) (= (exists ((V4702l_27_2E0 u) (V4703e1_2E0 u) (V4704e2_2E0 u) (V4705e3_2E0 u) (V4706e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4702l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4703e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4704e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4705e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4706e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_93) _let_3)) (= (exists ((V4707l_27_2E0 u) (V4708e1_2E0 u) (V4709e2_2E0 u) (V4710e3_2E0 u) (V4711e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4707l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4708e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4709e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4710e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4711e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_93)) (= (= _let_3 _let_83) (exists ((V4712l_27_2E0 u) (V4713e1_2E0 u) (V4714e2_2E0 u) (V4715e3_2E0 u) (V4716e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4712l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4713e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4714e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4715e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4716e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V4717l_27_2E0 u) (V4718e1_2E0 u) (V4719e2_2E0 u) (V4720e3_2E0 u) (V4721e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4717l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4718e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4719e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4720e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4721e4_2E0)) _let_2)))))))))))))) (= _let_83 _let_3)) (= (exists ((V4722l_27_2E0 u) (V4723e1_2E0 u) (V4724e2_2E0 u) (V4725e3_2E0 u) (V4726e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4722l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4723e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4724e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4725e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4726e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_93)) (= (= _let_93 _let_3) (exists ((V4727l_27_2E0 u) (V4728e1_2E0 u) (V4729e2_2E0 u) (V4730e3_2E0 u) (V4731e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4727l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4728e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4729e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4730e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4731e4_2E0)) _let_2))))))))))))))) (= (exists ((V4735e1_2E0 u) (V4736e2_2E0 u) (V4737e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4735e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4736e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4737e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_82 _let_3)) (= (exists ((V4738l_27_2E0 u) (V4739e1_2E0 u) (V4740e2_2E0 u) (V4741e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4739e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4740e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4741e3_2E0)) (_let_1 V4738l_27_2E0))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_86) _let_3)) (= (_let_21 _let_86) (exists ((V4742l_27_2E0 u) (V4743e1_2E0 u) (V4744e2_2E0 u) (V4745e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4743e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4744e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4745e3_2E0)) (_let_1 V4742l_27_2E0)))))))))))) (= (exists ((V4746l_27_2E0 u) (V4747e1_2E0 u) (V4748e2_2E0 u) (V4749e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4747e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4748e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4749e3_2E0)) (_let_1 V4746l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_82) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_84) _let_3) (exists ((V4754l_27_2E0 u) (V4755e1_2E0 u) (V4756e2_2E0 u) (V4757e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4754l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4755e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4756e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4757e3_2E0)) _let_2))))))))))))) (= (exists ((V4762l_27_2E0 u) (V4763e1_2E0 u) (V4764e2_2E0 u) (V4765e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4762l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4763e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4764e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4765e3_2E0)) _let_2)))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_85) _let_3)) (= (exists ((V4766l_27_2E0 u) (V4767e1_2E0 u) (V4768e2_2E0 u) (V4769e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4766l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4767e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4768e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4769e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_85)) (= (= _let_86 _let_3) (exists ((V4788e1_2E0 u) (V4789e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4788e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4789e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (exists ((V4793l_27_2E0 u) (V4794e1_2E0 u) (V4795e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4794e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4795e2_2E0)) (_let_1 V4793l_27_2E0))))))))) (_let_21 _let_87)) (= (exists ((V4802l_27_2E0 u) (V4803e1_2E0 u) (V4804e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4802l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4803e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4804e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_88) _let_3)) (= (exists ((V4808l_27_2E0 u) (V4809e1_2E0 u) (V4810e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4808l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4809e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4810e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_89) _let_3)) (= (exists ((V4814l_27_2E0 u) (V4815e1_2E0 u) (V4816e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4814l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4815e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4816e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_88)) (= (= _let_88 _let_3) (exists ((V4817l_27_2E0 u) (V4818e1_2E0 u) (V4819e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4817l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4818e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4819e2_2E0)) _let_2))))))))))) (= (exists ((V4820l_27_2E0 u) (V4821e1_2E0 u) (V4822e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4820l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4821e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4822e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_89)) (= (= _let_89 _let_3) (exists ((V4823l_27_2E0 u) (V4824e1_2E0 u) (V4825e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4823l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4824e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4825e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V4828l_27_2E0 u) (V4829e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4829e1_2E0)) (_let_1 V4828l_27_2E0)))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_3)) (= (exists ((V4832l_27_2E0 u) (V4833e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4833e1_2E0)) (_let_1 V4832l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_87) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_90) _let_3) (exists ((V4836l_27_2E0 u) (V4837e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4836l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4837e1_2E0)) _let_2)))))))) (= (exists ((V4842l_27_2E0 u) (V4843e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4842l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4843e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_11 _let_91)) (= (= _let_3 _let_90) (exists ((V4844l_27_2E0 u) (V4845e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4844l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4845e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V4848l_27_2E0 u) (V4849e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4848l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4849e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_3 _let_91)) (= _let_92 (= _let_3 mono_2Ec_2Enum_2E0)) (= _let_92 ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_87)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0) _let_92) (= _let_92 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3E _let_87) _let_3) _let_92) (= _let_92 (= mono_2Ec_2Enum_2E0 _let_3)) (= (= _let_91 _let_3) (exists ((V4850l_27_2E0 u) (V4851e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4850l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4851e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_90 _let_3) (exists ((V4846l_27_2E0 u) (V4847e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4846l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4847e1_2E0)) _let_2)))))))) (= (exists ((V4840l_27_2E0 u) (V4841e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4840l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4841e1_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_91) _let_3)) (= (exists ((V4838l_27_2E0 u) (V4839e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4838l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4839e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_11 _let_90)) (= (_let_11 _let_87) (exists ((V4834l_27_2E0 u) (V4835e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4835e1_2E0)) (_let_1 V4834l_27_2E0))))))) (= (exists ((V4830l_27_2E0 u) (V4831e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4831e1_2E0)) (_let_1 V4830l_27_2E0)))))) (_let_21 mono_2Ec_2Enum_2E0)) (= (exists ((V4827e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4827e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_87 _let_3)) (= (= _let_3 _let_87) (exists ((V4826e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4826e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (_let_11 _let_89) (exists ((V4811l_27_2E0 u) (V4812e1_2E0 u) (V4813e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4811l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4812e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4813e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V4805l_27_2E0 u) (V4806e1_2E0 u) (V4807e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4805l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4806e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4807e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_88)) (= (exists ((V4799l_27_2E0 u) (V4800e1_2E0 u) (V4801e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4800e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4801e2_2E0)) (_let_1 V4799l_27_2E0))))))))) (_let_11 _let_86)) (= (exists ((V4796l_27_2E0 u) (V4797e1_2E0 u) (V4798e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4797e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4798e2_2E0)) (_let_1 V4796l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_86) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_87) _let_3) (exists ((V4790l_27_2E0 u) (V4791e1_2E0 u) (V4792e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4791e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4792e2_2E0)) (_let_1 V4790l_27_2E0)))))))))) (= (exists ((V4786e1_2E0 u) (V4787e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4786e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4787e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_3 _let_86)) (= (= _let_85 _let_3) (exists ((V4782l_27_2E0 u) (V4783e1_2E0 u) (V4784e2_2E0 u) (V4785e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4782l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4783e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4784e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4785e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_85) (exists ((V4778l_27_2E0 u) (V4779e1_2E0 u) (V4780e2_2E0 u) (V4781e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4778l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4779e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4780e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4781e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_84 _let_3) (exists ((V4774l_27_2E0 u) (V4775e1_2E0 u) (V4776e2_2E0 u) (V4777e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4774l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4775e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4776e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4777e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_84) (exists ((V4770l_27_2E0 u) (V4771e1_2E0 u) (V4772e2_2E0 u) (V4773e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4770l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4771e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4772e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4773e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_11 _let_84) (exists ((V4758l_27_2E0 u) (V4759e1_2E0 u) (V4760e2_2E0 u) (V4761e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4758l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4759e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4760e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4761e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_11 _let_82) (exists ((V4750l_27_2E0 u) (V4751e1_2E0 u) (V4752e2_2E0 u) (V4753e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4751e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4752e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4753e3_2E0)) (_let_1 V4750l_27_2E0)))))))))))) (= (= _let_3 _let_82) (exists ((V4732e1_2E0 u) (V4733e2_2E0 u) (V4734e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4732e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4733e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4734e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_83) _let_3) (exists ((V4692l_27_2E0 u) (V4693e1_2E0 u) (V4694e2_2E0 u) (V4695e3_2E0 u) (V4696e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4692l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4693e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4694e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4695e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4696e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_82) _let_3) (exists ((V4672l_27_2E0 u) (V4673e1_2E0 u) (V4674e2_2E0 u) (V4675e3_2E0 u) (V4676e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4673e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4674e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4675e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4676e4_2E0)) (_let_1 V4672l_27_2E0)))))))))))))) (= (= _let_79 _let_3) (exists ((V4668e1_2E0 u) (V4669e2_2E0 u) (V4670e3_2E0 u) (V4671e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4668e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4669e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4670e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4671e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= (exists ((V4646l_27_2E0 u) (V4647e1_2E0 u) (V4648e2_2E0 u) (V4649e3_2E0 u) (V4650e4_2E0 u) (V4651e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4646l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4647e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4648e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4649e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4650e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4651e5_2E0)) _let_2)))))))))))))))) (= _let_80 _let_3)) (= (_let_11 _let_81) (exists ((V4634l_27_2E0 u) (V4635e1_2E0 u) (V4636e2_2E0 u) (V4637e3_2E0 u) (V4638e4_2E0 u) (V4639e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4634l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4635e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4636e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4637e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4638e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4639e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V4622l_27_2E0 u) (V4623e1_2E0 u) (V4624e2_2E0 u) (V4625e3_2E0 u) (V4626e4_2E0 u) (V4627e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4622l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4623e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4624e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4625e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4626e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4627e5_2E0)) _let_2)))))))))))))))) (_let_11 _let_80)) (= (exists ((V4616l_27_2E0 u) (V4617e1_2E0 u) (V4618e2_2E0 u) (V4619e3_2E0 u) (V4620e4_2E0 u) (V4621e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4616l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4617e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4618e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4619e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4620e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4621e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_80) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_79) _let_3) (exists ((V4592l_27_2E0 u) (V4593e1_2E0 u) (V4594e2_2E0 u) (V4595e3_2E0 u) (V4596e4_2E0 u) (V4597e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4593e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4594e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4595e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4596e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4597e5_2E0)) (_let_1 V4592l_27_2E0)))))))))))))))) (= (= _let_78 _let_3) (exists ((V4575l_27_2E0 u) (V4576e1_2E0 u) (V4577e2_2E0 u) (V4578e3_2E0 u) (V4579e4_2E0 u) (V4580e5_2E0 u) (V4581e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4575l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4576e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4577e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4578e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4579e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4580e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4581e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V4554l_27_2E0 u) (V4555e1_2E0 u) (V4556e2_2E0 u) (V4557e3_2E0 u) (V4558e4_2E0 u) (V4559e5_2E0 u) (V4560e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4554l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4555e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4556e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4557e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4558e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4559e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4560e6_2E0)) _let_2)))))))))))))))))) (= _let_3 _let_77)) (= (exists ((V4533l_27_2E0 u) (V4534e1_2E0 u) (V4535e2_2E0 u) (V4536e3_2E0 u) (V4537e4_2E0 u) (V4538e5_2E0 u) (V4539e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4533l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4534e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4535e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4536e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4537e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4538e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4539e6_2E0)) _let_2)))))))))))))))))) (_let_11 _let_77)) (= (exists ((V4519l_27_2E0 u) (V4520e1_2E0 u) (V4521e2_2E0 u) (V4522e3_2E0 u) (V4523e4_2E0 u) (V4524e5_2E0 u) (V4525e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4520e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4521e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4522e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4523e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4524e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4525e6_2E0)) (_let_1 V4519l_27_2E0))))))))))))))))) (_let_11 _let_72)) (= (exists ((V4498l_27_2E0 u) (V4499e1_2E0 u) (V4500e2_2E0 u) (V4501e3_2E0 u) (V4502e4_2E0 u) (V4503e5_2E0 u) (V4504e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4499e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4500e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4501e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4502e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4503e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4504e6_2E0)) (_let_1 V4498l_27_2E0))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_76) _let_3)) (= (= _let_75 _let_3) (exists ((V4478l_27_2E0 u) (V4479e1_2E0 u) (V4480e2_2E0 u) (V4481e3_2E0 u) (V4482e4_2E0 u) (V4483e5_2E0 u) (V4484e6_2E0 u) (V4485e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4478l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4479e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4480e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4481e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4482e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4483e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4484e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4485e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V4470l_27_2E0 u) (V4471e1_2E0 u) (V4472e2_2E0 u) (V4473e3_2E0 u) (V4474e4_2E0 u) (V4475e5_2E0 u) (V4476e6_2E0 u) (V4477e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4470l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4471e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4472e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4473e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4474e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4475e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4476e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4477e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_75)) (= (= _let_3 _let_74) (exists ((V4454l_27_2E0 u) (V4455e1_2E0 u) (V4456e2_2E0 u) (V4457e3_2E0 u) (V4458e4_2E0 u) (V4459e5_2E0 u) (V4460e6_2E0 u) (V4461e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4454l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4455e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4456e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4457e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4458e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4459e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4460e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4461e7_2E0)) _let_2))))))))))))))))))))) (= (_let_11 _let_75) (exists ((V4446l_27_2E0 u) (V4447e1_2E0 u) (V4448e2_2E0 u) (V4449e3_2E0 u) (V4450e4_2E0 u) (V4451e5_2E0 u) (V4452e6_2E0 u) (V4453e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4446l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4447e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4448e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4449e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4450e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4451e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4452e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4453e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V4438l_27_2E0 u) (V4439e1_2E0 u) (V4440e2_2E0 u) (V4441e3_2E0 u) (V4442e4_2E0 u) (V4443e5_2E0 u) (V4444e6_2E0 u) (V4445e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4438l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4439e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4440e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4441e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4442e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4443e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4444e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4445e7_2E0)) _let_2)))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_75) _let_3)) (= (exists ((V4430l_27_2E0 u) (V4431e1_2E0 u) (V4432e2_2E0 u) (V4433e3_2E0 u) (V4434e4_2E0 u) (V4435e5_2E0 u) (V4436e6_2E0 u) (V4437e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4430l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4431e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4432e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4433e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4434e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4435e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4436e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4437e7_2E0)) _let_2)))))))))))))))))))) (_let_11 _let_74)) (= (exists ((V4422l_27_2E0 u) (V4423e1_2E0 u) (V4424e2_2E0 u) (V4425e3_2E0 u) (V4426e4_2E0 u) (V4427e5_2E0 u) (V4428e6_2E0 u) (V4429e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4422l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4423e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4424e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4425e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4426e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4427e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4428e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4429e7_2E0)) _let_2)))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_74) _let_3)) (= (_let_11 _let_73) (exists ((V4414l_27_2E0 u) (V4415e1_2E0 u) (V4416e2_2E0 u) (V4417e3_2E0 u) (V4418e4_2E0 u) (V4419e5_2E0 u) (V4420e6_2E0 u) (V4421e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4415e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4416e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4417e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4418e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4419e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4420e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4421e7_2E0)) (_let_1 V4414l_27_2E0)))))))))))))))))))) (= (exists ((V4390l_27_2E0 u) (V4391e1_2E0 u) (V4392e2_2E0 u) (V4393e3_2E0 u) (V4394e4_2E0 u) (V4395e5_2E0 u) (V4396e6_2E0 u) (V4397e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4391e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4392e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4393e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4394e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4395e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4396e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4397e7_2E0)) (_let_1 V4390l_27_2E0))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_72) _let_3)) (= (= _let_70 _let_3) (exists ((V4349l_27_2E0 u) (V4350e1_2E0 u) (V4351e2_2E0 u) (V4352e3_2E0 u) (V4353e4_2E0 u) (V4354e5_2E0 u) (V4355e6_2E0 u) (V4356e7_2E0 u) (V4357e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4349l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4350e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4351e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4352e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4353e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4354e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4355e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4356e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4357e8_2E0)) _let_2))))))))))))))))))))))) (= (exists ((V4340l_27_2E0 u) (V4341e1_2E0 u) (V4342e2_2E0 u) (V4343e3_2E0 u) (V4344e4_2E0 u) (V4345e5_2E0 u) (V4346e6_2E0 u) (V4347e7_2E0 u) (V4348e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4340l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4341e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4342e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4343e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4344e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4345e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4346e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4347e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4348e8_2E0)) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_70)) (= (exists ((V4331l_27_2E0 u) (V4332e1_2E0 u) (V4333e2_2E0 u) (V4334e3_2E0 u) (V4335e4_2E0 u) (V4336e5_2E0 u) (V4337e6_2E0 u) (V4338e7_2E0 u) (V4339e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4331l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4332e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4333e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4334e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4335e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4336e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4337e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4338e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4339e8_2E0)) _let_2)))))))))))))))))))))) (_let_11 _let_71)) (= (exists ((V4322l_27_2E0 u) (V4323e1_2E0 u) (V4324e2_2E0 u) (V4325e3_2E0 u) (V4326e4_2E0 u) (V4327e5_2E0 u) (V4328e6_2E0 u) (V4329e7_2E0 u) (V4330e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4322l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4323e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4324e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4325e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4326e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4327e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4328e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4329e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4330e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_71) _let_3)) (= (exists ((V4304l_27_2E0 u) (V4305e1_2E0 u) (V4306e2_2E0 u) (V4307e3_2E0 u) (V4308e4_2E0 u) (V4309e5_2E0 u) (V4310e6_2E0 u) (V4311e7_2E0 u) (V4312e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4304l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4305e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4306e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4307e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4308e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4309e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4310e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4311e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4312e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_70) _let_3)) (= (exists ((V4295l_27_2E0 u) (V4296e1_2E0 u) (V4297e2_2E0 u) (V4298e3_2E0 u) (V4299e4_2E0 u) (V4300e5_2E0 u) (V4301e6_2E0 u) (V4302e7_2E0 u) (V4303e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4296e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4297e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4298e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4299e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4300e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4301e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4302e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4303e8_2E0)) (_let_1 V4295l_27_2E0))))))))))))))))))))) (_let_11 _let_66)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_66) _let_3) (exists ((V4286l_27_2E0 u) (V4287e1_2E0 u) (V4288e2_2E0 u) (V4289e3_2E0 u) (V4290e4_2E0 u) (V4291e5_2E0 u) (V4292e6_2E0 u) (V4293e7_2E0 u) (V4294e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4287e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4288e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4289e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4290e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4291e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4292e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4293e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4294e8_2E0)) (_let_1 V4286l_27_2E0)))))))))))))))))))))) (= (= _let_66 _let_3) (exists ((V4260e1_2E0 u) (V4261e2_2E0 u) (V4262e3_2E0 u) (V4263e4_2E0 u) (V4264e5_2E0 u) (V4265e6_2E0 u) (V4266e7_2E0 u) (V4267e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4260e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4261e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4262e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4263e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4264e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4265e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4266e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4267e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))) (= (= _let_3 _let_68) (exists ((V4232l_27_2E0 u) (V4233e1_2E0 u) (V4234e2_2E0 u) (V4235e3_2E0 u) (V4236e4_2E0 u) (V4237e5_2E0 u) (V4238e6_2E0 u) (V4239e7_2E0 u) (V4240e8_2E0 u) (V4241e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4232l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4233e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4234e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4235e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4236e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4237e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4238e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4239e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4240e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4241e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_69) (exists ((V4212l_27_2E0 u) (V4213e1_2E0 u) (V4214e2_2E0 u) (V4215e3_2E0 u) (V4216e4_2E0 u) (V4217e5_2E0 u) (V4218e6_2E0 u) (V4219e7_2E0 u) (V4220e8_2E0 u) (V4221e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4212l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4213e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4214e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4215e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4216e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4217e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4218e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4219e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4220e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4221e9_2E0)) _let_2))))))))))))))))))))))))) (= (_let_11 _let_68) (exists ((V4202l_27_2E0 u) (V4203e1_2E0 u) (V4204e2_2E0 u) (V4205e3_2E0 u) (V4206e4_2E0 u) (V4207e5_2E0 u) (V4208e6_2E0 u) (V4209e7_2E0 u) (V4210e8_2E0 u) (V4211e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4202l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4203e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4204e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4205e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4206e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4207e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4208e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4209e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4210e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4211e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_11 _let_67) (exists ((V4162l_27_2E0 u) (V4163e1_2E0 u) (V4164e2_2E0 u) (V4165e3_2E0 u) (V4166e4_2E0 u) (V4167e5_2E0 u) (V4168e6_2E0 u) (V4169e7_2E0 u) (V4170e8_2E0 u) (V4171e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4163e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4164e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4165e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4166e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4167e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4168e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4169e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4170e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4171e9_2E0)) (_let_1 V4162l_27_2E0)))))))))))))))))))))))) (= (exists ((V4142l_27_2E0 u) (V4143e1_2E0 u) (V4144e2_2E0 u) (V4145e3_2E0 u) (V4146e4_2E0 u) (V4147e5_2E0 u) (V4148e6_2E0 u) (V4149e7_2E0 u) (V4150e8_2E0 u) (V4151e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4143e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4144e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4145e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4146e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4147e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4148e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4149e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4150e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4151e9_2E0)) (_let_1 V4142l_27_2E0))))))))))))))))))))))) (_let_21 _let_66)) (= (= _let_64 _let_3) (exists ((V4103l_27_2E0 u) (V4104e1_2E0 u) (V4105e2_2E0 u) (V4106e3_2E0 u) (V4107e4_2E0 u) (V4108e5_2E0 u) (V4109e6_2E0 u) (V4110e7_2E0 u) (V4111e8_2E0 u) (V4112e9_2E0 u) (V4113e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4103l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4104e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4105e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4106e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4107e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4108e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4109e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4110e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4111e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4112e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4113e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_64) (exists ((V4092l_27_2E0 u) (V4093e1_2E0 u) (V4094e2_2E0 u) (V4095e3_2E0 u) (V4096e4_2E0 u) (V4097e5_2E0 u) (V4098e6_2E0 u) (V4099e7_2E0 u) (V4100e8_2E0 u) (V4101e9_2E0 u) (V4102e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4092l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4093e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4094e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4095e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4096e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4097e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4098e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4099e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4100e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4101e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4102e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_65) (exists ((V4070l_27_2E0 u) (V4071e1_2E0 u) (V4072e2_2E0 u) (V4073e3_2E0 u) (V4074e4_2E0 u) (V4075e5_2E0 u) (V4076e6_2E0 u) (V4077e7_2E0 u) (V4078e8_2E0 u) (V4079e9_2E0 u) (V4080e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4070l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4071e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4072e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4073e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4074e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4075e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4076e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4077e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4078e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4079e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4080e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V4059l_27_2E0 u) (V4060e1_2E0 u) (V4061e2_2E0 u) (V4062e3_2E0 u) (V4063e4_2E0 u) (V4064e5_2E0 u) (V4065e6_2E0 u) (V4066e7_2E0 u) (V4067e8_2E0 u) (V4068e9_2E0 u) (V4069e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4059l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4060e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4061e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4062e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4063e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4064e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4065e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4066e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4067e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4068e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4069e10_2E0)) _let_2)))))))))))))))))))))))))) (_let_11 _let_64)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_64) _let_3) (exists ((V4048l_27_2E0 u) (V4049e1_2E0 u) (V4050e2_2E0 u) (V4051e3_2E0 u) (V4052e4_2E0 u) (V4053e5_2E0 u) (V4054e6_2E0 u) (V4055e7_2E0 u) (V4056e8_2E0 u) (V4057e9_2E0 u) (V4058e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4048l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4049e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4050e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4051e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4052e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4053e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4054e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4055e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4056e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4057e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V4058e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3972e1_2E0 u) (V3973e2_2E0 u) (V3974e3_2E0 u) (V3975e4_2E0 u) (V3976e5_2E0 u) (V3977e6_2E0 u) (V3978e7_2E0 u) (V3979e8_2E0 u) (V3980e9_2E0 u) (V3981e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3972e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3973e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3974e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3975e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3976e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3977e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3978e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3979e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3980e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3981e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))) (= _let_61 _let_3)) (= (exists ((V3938l_27_2E0 u) (V3939e1_2E0 u) (V3940e2_2E0 u) (V3941e3_2E0 u) (V3942e4_2E0 u) (V3943e5_2E0 u) (V3944e6_2E0 u) (V3945e7_2E0 u) (V3946e8_2E0 u) (V3947e9_2E0 u) (V3948e10_2E0 u) (V3949e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3938l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3939e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3940e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3941e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3942e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3943e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3944e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3945e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3946e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3947e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3948e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3949e11_2E0)) _let_2))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_63)) (= (exists ((V3878l_27_2E0 u) (V3879e1_2E0 u) (V3880e2_2E0 u) (V3881e3_2E0 u) (V3882e4_2E0 u) (V3883e5_2E0 u) (V3884e6_2E0 u) (V3885e7_2E0 u) (V3886e8_2E0 u) (V3887e9_2E0 u) (V3888e10_2E0 u) (V3889e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3878l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3879e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3880e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3881e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3882e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3883e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3884e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3885e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3886e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3887e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3888e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3889e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_62)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_62) _let_3) (exists ((V3866l_27_2E0 u) (V3867e1_2E0 u) (V3868e2_2E0 u) (V3869e3_2E0 u) (V3870e4_2E0 u) (V3871e5_2E0 u) (V3872e6_2E0 u) (V3873e7_2E0 u) (V3874e8_2E0 u) (V3875e9_2E0 u) (V3876e10_2E0 u) (V3877e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3866l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3867e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3868e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3869e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3870e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3871e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3872e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3873e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3874e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3875e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3876e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3877e11_2E0)) _let_2))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_61) _let_3) (exists ((V3818l_27_2E0 u) (V3819e1_2E0 u) (V3820e2_2E0 u) (V3821e3_2E0 u) (V3822e4_2E0 u) (V3823e5_2E0 u) (V3824e6_2E0 u) (V3825e7_2E0 u) (V3826e8_2E0 u) (V3827e9_2E0 u) (V3828e10_2E0 u) (V3829e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3819e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3820e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3821e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3822e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3823e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3824e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3825e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3826e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3827e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3828e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3829e11_2E0)) (_let_1 V3818l_27_2E0)))))))))))))))))))))))))))) (= (exists ((V3796e1_2E0 u) (V3797e2_2E0 u) (V3798e3_2E0 u) (V3799e4_2E0 u) (V3800e5_2E0 u) (V3801e6_2E0 u) (V3802e7_2E0 u) (V3803e8_2E0 u) (V3804e9_2E0 u) (V3805e10_2E0 u) (V3806e11_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3796e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3797e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3798e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3799e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3800e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3801e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3802e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3803e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3804e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3805e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3806e11_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))) (= _let_3 _let_58)) (= (exists ((V3783l_27_2E0 u) (V3784e1_2E0 u) (V3785e2_2E0 u) (V3786e3_2E0 u) (V3787e4_2E0 u) (V3788e5_2E0 u) (V3789e6_2E0 u) (V3790e7_2E0 u) (V3791e8_2E0 u) (V3792e9_2E0 u) (V3793e10_2E0 u) (V3794e11_2E0 u) (V3795e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3783l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3784e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3785e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3786e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3787e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3788e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3789e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3790e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3791e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3792e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3793e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3794e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3795e12_2E0)) _let_2)))))))))))))))))))))))))))))) (= _let_60 _let_3)) (= (= _let_59 _let_3) (exists ((V3757l_27_2E0 u) (V3758e1_2E0 u) (V3759e2_2E0 u) (V3760e3_2E0 u) (V3761e4_2E0 u) (V3762e5_2E0 u) (V3763e6_2E0 u) (V3764e7_2E0 u) (V3765e8_2E0 u) (V3766e9_2E0 u) (V3767e10_2E0 u) (V3768e11_2E0 u) (V3769e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3757l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3758e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3759e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3760e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3761e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3762e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3763e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3764e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3765e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3766e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3767e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3768e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3769e12_2E0)) _let_2))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_11 _let_60) (exists ((V3731l_27_2E0 u) (V3732e1_2E0 u) (V3733e2_2E0 u) (V3734e3_2E0 u) (V3735e4_2E0 u) (V3736e5_2E0 u) (V3737e6_2E0 u) (V3738e7_2E0 u) (V3739e8_2E0 u) (V3740e9_2E0 u) (V3741e10_2E0 u) (V3742e11_2E0 u) (V3743e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3731l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3732e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3733e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3734e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3735e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3736e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3737e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3738e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3739e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3740e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3741e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3742e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3743e12_2E0)) _let_2))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3705l_27_2E0 u) (V3706e1_2E0 u) (V3707e2_2E0 u) (V3708e3_2E0 u) (V3709e4_2E0 u) (V3710e5_2E0 u) (V3711e6_2E0 u) (V3712e7_2E0 u) (V3713e8_2E0 u) (V3714e9_2E0 u) (V3715e10_2E0 u) (V3716e11_2E0 u) (V3717e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3705l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3706e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3707e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3708e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3709e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3710e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3711e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3712e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3713e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3714e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3715e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3716e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3717e12_2E0)) _let_2)))))))))))))))))))))))))))))) (_let_11 _let_59)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_59) _let_3) (exists ((V3692l_27_2E0 u) (V3693e1_2E0 u) (V3694e2_2E0 u) (V3695e3_2E0 u) (V3696e4_2E0 u) (V3697e5_2E0 u) (V3698e6_2E0 u) (V3699e7_2E0 u) (V3700e8_2E0 u) (V3701e9_2E0 u) (V3702e10_2E0 u) (V3703e11_2E0 u) (V3704e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3692l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3693e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3694e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3695e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3696e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3697e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3698e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3699e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3700e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3701e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3702e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3703e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3704e12_2E0)) _let_2))))))))))))))))))))))))))))))) (= (exists ((V3679l_27_2E0 u) (V3680e1_2E0 u) (V3681e2_2E0 u) (V3682e3_2E0 u) (V3683e4_2E0 u) (V3684e5_2E0 u) (V3685e6_2E0 u) (V3686e7_2E0 u) (V3687e8_2E0 u) (V3688e9_2E0 u) (V3689e10_2E0 u) (V3690e11_2E0 u) (V3691e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3680e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3681e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3682e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3683e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3684e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3685e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3686e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3687e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3688e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3689e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3690e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3691e12_2E0)) (_let_1 V3679l_27_2E0))))))))))))))))))))))))))))) (_let_11 _let_55)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_55) _let_3) (exists ((V3666l_27_2E0 u) (V3667e1_2E0 u) (V3668e2_2E0 u) (V3669e3_2E0 u) (V3670e4_2E0 u) (V3671e5_2E0 u) (V3672e6_2E0 u) (V3673e7_2E0 u) (V3674e8_2E0 u) (V3675e9_2E0 u) (V3676e10_2E0 u) (V3677e11_2E0 u) (V3678e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3667e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3668e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3669e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3670e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3671e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3672e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3673e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3674e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3675e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3676e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3677e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3678e12_2E0)) (_let_1 V3666l_27_2E0)))))))))))))))))))))))))))))) (= (exists ((V3653l_27_2E0 u) (V3654e1_2E0 u) (V3655e2_2E0 u) (V3656e3_2E0 u) (V3657e4_2E0 u) (V3658e5_2E0 u) (V3659e6_2E0 u) (V3660e7_2E0 u) (V3661e8_2E0 u) (V3662e9_2E0 u) (V3663e10_2E0 u) (V3664e11_2E0 u) (V3665e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3654e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3655e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3656e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3657e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3658e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3659e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3660e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3661e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3662e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3663e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3664e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3665e12_2E0)) (_let_1 V3653l_27_2E0))))))))))))))))))))))))))))) (_let_21 _let_58)) (= (= _let_55 _let_3) (exists ((V3628e1_2E0 u) (V3629e2_2E0 u) (V3630e3_2E0 u) (V3631e4_2E0 u) (V3632e5_2E0 u) (V3633e6_2E0 u) (V3634e7_2E0 u) (V3635e8_2E0 u) (V3636e9_2E0 u) (V3637e10_2E0 u) (V3638e11_2E0 u) (V3639e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3628e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3629e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3630e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3631e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3632e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3633e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3634e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3635e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3636e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3637e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3638e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3639e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))) (= (= _let_3 _let_55) (exists ((V3616e1_2E0 u) (V3617e2_2E0 u) (V3618e3_2E0 u) (V3619e4_2E0 u) (V3620e5_2E0 u) (V3621e6_2E0 u) (V3622e7_2E0 u) (V3623e8_2E0 u) (V3624e9_2E0 u) (V3625e10_2E0 u) (V3626e11_2E0 u) (V3627e12_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3616e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3617e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3618e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3619e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3620e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3621e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3622e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3623e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3624e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3625e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3626e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3627e12_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))) (= (exists ((V3574l_27_2E0 u) (V3575e1_2E0 u) (V3576e2_2E0 u) (V3577e3_2E0 u) (V3578e4_2E0 u) (V3579e5_2E0 u) (V3580e6_2E0 u) (V3581e7_2E0 u) (V3582e8_2E0 u) (V3583e9_2E0 u) (V3584e10_2E0 u) (V3585e11_2E0 u) (V3586e12_2E0 u) (V3587e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3574l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3575e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3576e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3577e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3578e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3579e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3580e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3581e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3582e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3583e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3584e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3585e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3586e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3587e13_2E0)) _let_2))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_56 _let_3)) (= (_let_11 _let_57) (exists ((V3546l_27_2E0 u) (V3547e1_2E0 u) (V3548e2_2E0 u) (V3549e3_2E0 u) (V3550e4_2E0 u) (V3551e5_2E0 u) (V3552e6_2E0 u) (V3553e7_2E0 u) (V3554e8_2E0 u) (V3555e9_2E0 u) (V3556e10_2E0 u) (V3557e11_2E0 u) (V3558e12_2E0 u) (V3559e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3546l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3547e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3548e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3549e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3550e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3551e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3552e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3553e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3554e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3555e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3556e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3557e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3558e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3559e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_57) _let_3) (exists ((V3532l_27_2E0 u) (V3533e1_2E0 u) (V3534e2_2E0 u) (V3535e3_2E0 u) (V3536e4_2E0 u) (V3537e5_2E0 u) (V3538e6_2E0 u) (V3539e7_2E0 u) (V3540e8_2E0 u) (V3541e9_2E0 u) (V3542e10_2E0 u) (V3543e11_2E0 u) (V3544e12_2E0 u) (V3545e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3532l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3533e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3534e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3535e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3536e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3537e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3538e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3539e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3540e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3541e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3542e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3543e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3544e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3545e13_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (exists ((V3518l_27_2E0 u) (V3519e1_2E0 u) (V3520e2_2E0 u) (V3521e3_2E0 u) (V3522e4_2E0 u) (V3523e5_2E0 u) (V3524e6_2E0 u) (V3525e7_2E0 u) (V3526e8_2E0 u) (V3527e9_2E0 u) (V3528e10_2E0 u) (V3529e11_2E0 u) (V3530e12_2E0 u) (V3531e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3518l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3519e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3520e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3521e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3522e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3523e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3524e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3525e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3526e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3527e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3528e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3529e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3530e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3531e13_2E0)) _let_2)))))))))))))))))))))))))))))))) (_let_11 _let_56)) (= (_let_11 _let_52) (exists ((V3490l_27_2E0 u) (V3491e1_2E0 u) (V3492e2_2E0 u) (V3493e3_2E0 u) (V3494e4_2E0 u) (V3495e5_2E0 u) (V3496e6_2E0 u) (V3497e7_2E0 u) (V3498e8_2E0 u) (V3499e9_2E0 u) (V3500e10_2E0 u) (V3501e11_2E0 u) (V3502e12_2E0 u) (V3503e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3491e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3492e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3493e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3494e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3495e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3496e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3497e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3498e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3499e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3500e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3501e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3502e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3503e13_2E0)) (_let_1 V3490l_27_2E0)))))))))))))))))))))))))))))))) (= (_let_21 _let_55) (exists ((V3462l_27_2E0 u) (V3463e1_2E0 u) (V3464e2_2E0 u) (V3465e3_2E0 u) (V3466e4_2E0 u) (V3467e5_2E0 u) (V3468e6_2E0 u) (V3469e7_2E0 u) (V3470e8_2E0 u) (V3471e9_2E0 u) (V3472e10_2E0 u) (V3473e11_2E0 u) (V3474e12_2E0 u) (V3475e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3463e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3464e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3465e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3466e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3467e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3468e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3469e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3470e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3471e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3472e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3473e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3474e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3475e13_2E0)) (_let_1 V3462l_27_2E0)))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_55) _let_3) (exists ((V3448l_27_2E0 u) (V3449e1_2E0 u) (V3450e2_2E0 u) (V3451e3_2E0 u) (V3452e4_2E0 u) (V3453e5_2E0 u) (V3454e6_2E0 u) (V3455e7_2E0 u) (V3456e8_2E0 u) (V3457e9_2E0 u) (V3458e10_2E0 u) (V3459e11_2E0 u) (V3460e12_2E0 u) (V3461e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3449e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3450e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3451e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3452e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3453e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3454e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3455e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3456e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3457e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3458e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3459e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3460e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3461e13_2E0)) (_let_1 V3448l_27_2E0)))))))))))))))))))))))))))))))) (= (exists ((V3422e1_2E0 u) (V3423e2_2E0 u) (V3424e3_2E0 u) (V3425e4_2E0 u) (V3426e5_2E0 u) (V3427e6_2E0 u) (V3428e7_2E0 u) (V3429e8_2E0 u) (V3430e9_2E0 u) (V3431e10_2E0 u) (V3432e11_2E0 u) (V3433e12_2E0 u) (V3434e13_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3422e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3423e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3424e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3425e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3426e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3427e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3428e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3429e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3430e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3431e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3432e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3433e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3434e13_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))) (= _let_3 _let_52)) (= (= _let_53 _let_3) (exists ((V3377l_27_2E0 u) (V3378e1_2E0 u) (V3379e2_2E0 u) (V3380e3_2E0 u) (V3381e4_2E0 u) (V3382e5_2E0 u) (V3383e6_2E0 u) (V3384e7_2E0 u) (V3385e8_2E0 u) (V3386e9_2E0 u) (V3387e10_2E0 u) (V3388e11_2E0 u) (V3389e12_2E0 u) (V3390e13_2E0 u) (V3391e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3377l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3378e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3379e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3380e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3381e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3382e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3383e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3384e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3385e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3386e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3387e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3388e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3389e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3390e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3391e14_2E0)) _let_2))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_53) (exists ((V3362l_27_2E0 u) (V3363e1_2E0 u) (V3364e2_2E0 u) (V3365e3_2E0 u) (V3366e4_2E0 u) (V3367e5_2E0 u) (V3368e6_2E0 u) (V3369e7_2E0 u) (V3370e8_2E0 u) (V3371e9_2E0 u) (V3372e10_2E0 u) (V3373e11_2E0 u) (V3374e12_2E0 u) (V3375e13_2E0 u) (V3376e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3362l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3363e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3364e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3365e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3366e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3367e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3368e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3369e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3370e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3371e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3372e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3373e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3374e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3375e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3376e14_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (_let_11 _let_54) (exists ((V3347l_27_2E0 u) (V3348e1_2E0 u) (V3349e2_2E0 u) (V3350e3_2E0 u) (V3351e4_2E0 u) (V3352e5_2E0 u) (V3353e6_2E0 u) (V3354e7_2E0 u) (V3355e8_2E0 u) (V3356e9_2E0 u) (V3357e10_2E0 u) (V3358e11_2E0 u) (V3359e12_2E0 u) (V3360e13_2E0 u) (V3361e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3347l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3348e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3349e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3350e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3351e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3352e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3353e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3354e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3355e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3356e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3357e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3358e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3359e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3360e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3361e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3317l_27_2E0 u) (V3318e1_2E0 u) (V3319e2_2E0 u) (V3320e3_2E0 u) (V3321e4_2E0 u) (V3322e5_2E0 u) (V3323e6_2E0 u) (V3324e7_2E0 u) (V3325e8_2E0 u) (V3326e9_2E0 u) (V3327e10_2E0 u) (V3328e11_2E0 u) (V3329e12_2E0 u) (V3330e13_2E0 u) (V3331e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3317l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3318e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3319e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3320e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3321e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3322e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3323e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3324e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3325e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3326e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3327e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3328e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3329e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3330e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3331e14_2E0)) _let_2))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_53)) (= (exists ((V3257l_27_2E0 u) (V3258e1_2E0 u) (V3259e2_2E0 u) (V3260e3_2E0 u) (V3261e4_2E0 u) (V3262e5_2E0 u) (V3263e6_2E0 u) (V3264e7_2E0 u) (V3265e8_2E0 u) (V3266e9_2E0 u) (V3267e10_2E0 u) (V3268e11_2E0 u) (V3269e12_2E0 u) (V3270e13_2E0 u) (V3271e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3258e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3259e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3260e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3261e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3262e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3263e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3264e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3265e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3266e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3267e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3268e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3269e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3270e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3271e14_2E0)) (_let_1 V3257l_27_2E0))))))))))))))))))))))))))))))))) (_let_21 _let_52)) (= (exists ((V3228e1_2E0 u) (V3229e2_2E0 u) (V3230e3_2E0 u) (V3231e4_2E0 u) (V3232e5_2E0 u) (V3233e6_2E0 u) (V3234e7_2E0 u) (V3235e8_2E0 u) (V3236e9_2E0 u) (V3237e10_2E0 u) (V3238e11_2E0 u) (V3239e12_2E0 u) (V3240e13_2E0 u) (V3241e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3228e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3229e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3230e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3231e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3232e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3233e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3234e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3235e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3236e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3237e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3238e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3239e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3240e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3241e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))) (= _let_50 _let_3)) (= (= _let_3 _let_50) (exists ((V3214e1_2E0 u) (V3215e2_2E0 u) (V3216e3_2E0 u) (V3217e4_2E0 u) (V3218e5_2E0 u) (V3219e6_2E0 u) (V3220e7_2E0 u) (V3221e8_2E0 u) (V3222e9_2E0 u) (V3223e10_2E0 u) (V3224e11_2E0 u) (V3225e12_2E0 u) (V3226e13_2E0 u) (V3227e14_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3214e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3215e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3216e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3217e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3218e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3219e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3220e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3221e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3222e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3223e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3224e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3225e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3226e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3227e14_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))) (= (_let_11 _let_51) (exists ((V3134l_27_2E0 u) (V3135e1_2E0 u) (V3136e2_2E0 u) (V3137e3_2E0 u) (V3138e4_2E0 u) (V3139e5_2E0 u) (V3140e6_2E0 u) (V3141e7_2E0 u) (V3142e8_2E0 u) (V3143e9_2E0 u) (V3144e10_2E0 u) (V3145e11_2E0 u) (V3146e12_2E0 u) (V3147e13_2E0 u) (V3148e14_2E0 u) (V3149e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3134l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3135e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3136e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3137e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3138e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3139e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3140e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3141e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3142e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3143e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3144e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3145e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3146e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3147e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3148e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3149e15_2E0)) _let_2))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V3070l_27_2E0 u) (V3071e1_2E0 u) (V3072e2_2E0 u) (V3073e3_2E0 u) (V3074e4_2E0 u) (V3075e5_2E0 u) (V3076e6_2E0 u) (V3077e7_2E0 u) (V3078e8_2E0 u) (V3079e9_2E0 u) (V3080e10_2E0 u) (V3081e11_2E0 u) (V3082e12_2E0 u) (V3083e13_2E0 u) (V3084e14_2E0 u) (V3085e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3071e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3072e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3073e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3074e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3075e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3076e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3077e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3078e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3079e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3080e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3081e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3082e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3083e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3084e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3085e15_2E0)) (_let_1 V3070l_27_2E0))))))))))))))))))))))))))))))))))) (_let_11 _let_46)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_46) _let_3) (exists ((V3054l_27_2E0 u) (V3055e1_2E0 u) (V3056e2_2E0 u) (V3057e3_2E0 u) (V3058e4_2E0 u) (V3059e5_2E0 u) (V3060e6_2E0 u) (V3061e7_2E0 u) (V3062e8_2E0 u) (V3063e9_2E0 u) (V3064e10_2E0 u) (V3065e11_2E0 u) (V3066e12_2E0 u) (V3067e13_2E0 u) (V3068e14_2E0 u) (V3069e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3055e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3056e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3057e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3058e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3059e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3060e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3061e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3062e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3063e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3064e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3065e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3066e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3067e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3068e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3069e15_2E0)) (_let_1 V3054l_27_2E0)))))))))))))))))))))))))))))))))))) (= (exists ((V3022l_27_2E0 u) (V3023e1_2E0 u) (V3024e2_2E0 u) (V3025e3_2E0 u) (V3026e4_2E0 u) (V3027e5_2E0 u) (V3028e6_2E0 u) (V3029e7_2E0 u) (V3030e8_2E0 u) (V3031e9_2E0 u) (V3032e10_2E0 u) (V3033e11_2E0 u) (V3034e12_2E0 u) (V3035e13_2E0 u) (V3036e14_2E0 u) (V3037e15_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3023e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3024e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3025e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3026e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3027e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3028e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3029e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3030e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3031e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3032e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3033e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3034e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3035e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3036e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3037e15_2E0)) (_let_1 V3022l_27_2E0))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_50) _let_3)) (= (exists ((V2941l_27_2E0 u) (V2942e1_2E0 u) (V2943e2_2E0 u) (V2944e3_2E0 u) (V2945e4_2E0 u) (V2946e5_2E0 u) (V2947e6_2E0 u) (V2948e7_2E0 u) (V2949e8_2E0 u) (V2950e9_2E0 u) (V2951e10_2E0 u) (V2952e11_2E0 u) (V2953e12_2E0 u) (V2954e13_2E0 u) (V2955e14_2E0 u) (V2956e15_2E0 u) (V2957e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2941l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2942e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2943e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2944e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2945e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2946e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2947e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2948e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2949e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2950e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2951e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2952e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2953e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2954e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2955e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2956e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2957e16_2E0)) _let_2))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_48 _let_3)) (= (= _let_3 _let_48) (exists ((V2924l_27_2E0 u) (V2925e1_2E0 u) (V2926e2_2E0 u) (V2927e3_2E0 u) (V2928e4_2E0 u) (V2929e5_2E0 u) (V2930e6_2E0 u) (V2931e7_2E0 u) (V2932e8_2E0 u) (V2933e9_2E0 u) (V2934e10_2E0 u) (V2935e11_2E0 u) (V2936e12_2E0 u) (V2937e13_2E0 u) (V2938e14_2E0 u) (V2939e15_2E0 u) (V2940e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2924l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2925e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2926e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2927e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2928e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2929e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2930e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2931e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2932e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2933e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2934e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2935e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2936e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2937e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2938e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2939e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2940e16_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_47) (exists ((V2907l_27_2E0 u) (V2908e1_2E0 u) (V2909e2_2E0 u) (V2910e3_2E0 u) (V2911e4_2E0 u) (V2912e5_2E0 u) (V2913e6_2E0 u) (V2914e7_2E0 u) (V2915e8_2E0 u) (V2916e9_2E0 u) (V2917e10_2E0 u) (V2918e11_2E0 u) (V2919e12_2E0 u) (V2920e13_2E0 u) (V2921e14_2E0 u) (V2922e15_2E0 u) (V2923e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2907l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2908e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2909e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2910e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2911e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2912e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2913e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2914e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2915e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2916e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2917e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2918e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2919e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2920e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2921e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2922e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2923e16_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) (= (exists ((V2839l_27_2E0 u) (V2840e1_2E0 u) (V2841e2_2E0 u) (V2842e3_2E0 u) (V2843e4_2E0 u) (V2844e5_2E0 u) (V2845e6_2E0 u) (V2846e7_2E0 u) (V2847e8_2E0 u) (V2848e9_2E0 u) (V2849e10_2E0 u) (V2850e11_2E0 u) (V2851e12_2E0 u) (V2852e13_2E0 u) (V2853e14_2E0 u) (V2854e15_2E0 u) (V2855e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2840e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2841e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2842e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2843e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2844e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2845e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2846e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2847e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2848e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2849e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2850e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2851e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2852e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2853e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2854e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2855e16_2E0)) (_let_1 V2839l_27_2E0))))))))))))))))))))))))))))))))))))) (_let_11 _let_43)) (= (exists ((V2788l_27_2E0 u) (V2789e1_2E0 u) (V2790e2_2E0 u) (V2791e3_2E0 u) (V2792e4_2E0 u) (V2793e5_2E0 u) (V2794e6_2E0 u) (V2795e7_2E0 u) (V2796e8_2E0 u) (V2797e9_2E0 u) (V2798e10_2E0 u) (V2799e11_2E0 u) (V2800e12_2E0 u) (V2801e13_2E0 u) (V2802e14_2E0 u) (V2803e15_2E0 u) (V2804e16_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2789e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2790e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2791e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2792e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2793e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2794e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2795e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2796e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2797e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2798e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2799e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2800e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2801e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2802e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2803e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2804e16_2E0)) (_let_1 V2788l_27_2E0))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_46) _let_3)) (= (exists ((V2738l_27_2E0 u) (V2739e1_2E0 u) (V2740e2_2E0 u) (V2741e3_2E0 u) (V2742e4_2E0 u) (V2743e5_2E0 u) (V2744e6_2E0 u) (V2745e7_2E0 u) (V2746e8_2E0 u) (V2747e9_2E0 u) (V2748e10_2E0 u) (V2749e11_2E0 u) (V2750e12_2E0 u) (V2751e13_2E0 u) (V2752e14_2E0 u) (V2753e15_2E0 u) (V2754e16_2E0 u) (V2755e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2738l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2739e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2740e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2741e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2742e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2743e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2744e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2745e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2746e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2747e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2748e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2749e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2750e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2751e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2752e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2753e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2754e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2755e17_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))) (= _let_45 _let_3)) (= (= _let_44 _let_3) (exists ((V2702l_27_2E0 u) (V2703e1_2E0 u) (V2704e2_2E0 u) (V2705e3_2E0 u) (V2706e4_2E0 u) (V2707e5_2E0 u) (V2708e6_2E0 u) (V2709e7_2E0 u) (V2710e8_2E0 u) (V2711e9_2E0 u) (V2712e10_2E0 u) (V2713e11_2E0 u) (V2714e12_2E0 u) (V2715e13_2E0 u) (V2716e14_2E0 u) (V2717e15_2E0 u) (V2718e16_2E0 u) (V2719e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2702l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2703e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2704e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2705e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2706e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2707e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2708e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2709e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2710e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2711e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2712e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2713e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2714e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2715e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2716e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2717e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2718e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2719e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_44) (exists ((V2684l_27_2E0 u) (V2685e1_2E0 u) (V2686e2_2E0 u) (V2687e3_2E0 u) (V2688e4_2E0 u) (V2689e5_2E0 u) (V2690e6_2E0 u) (V2691e7_2E0 u) (V2692e8_2E0 u) (V2693e9_2E0 u) (V2694e10_2E0 u) (V2695e11_2E0 u) (V2696e12_2E0 u) (V2697e13_2E0 u) (V2698e14_2E0 u) (V2699e15_2E0 u) (V2700e16_2E0 u) (V2701e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2684l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2685e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2686e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2687e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2688e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2689e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2690e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2691e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2692e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2693e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2694e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2695e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2696e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2697e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2698e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2699e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2700e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2701e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_45) _let_3) (exists ((V2648l_27_2E0 u) (V2649e1_2E0 u) (V2650e2_2E0 u) (V2651e3_2E0 u) (V2652e4_2E0 u) (V2653e5_2E0 u) (V2654e6_2E0 u) (V2655e7_2E0 u) (V2656e8_2E0 u) (V2657e9_2E0 u) (V2658e10_2E0 u) (V2659e11_2E0 u) (V2660e12_2E0 u) (V2661e13_2E0 u) (V2662e14_2E0 u) (V2663e15_2E0 u) (V2664e16_2E0 u) (V2665e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2648l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2649e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2650e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2651e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2652e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2653e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2654e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2655e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2656e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2657e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2658e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2659e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2660e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2661e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2662e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2663e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2664e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2665e17_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_44) (exists ((V2630l_27_2E0 u) (V2631e1_2E0 u) (V2632e2_2E0 u) (V2633e3_2E0 u) (V2634e4_2E0 u) (V2635e5_2E0 u) (V2636e6_2E0 u) (V2637e7_2E0 u) (V2638e8_2E0 u) (V2639e9_2E0 u) (V2640e10_2E0 u) (V2641e11_2E0 u) (V2642e12_2E0 u) (V2643e13_2E0 u) (V2644e14_2E0 u) (V2645e15_2E0 u) (V2646e16_2E0 u) (V2647e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2630l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2631e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2632e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2633e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2634e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2635e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2636e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2637e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2638e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2639e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2640e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2641e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2642e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2643e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2644e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2645e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2646e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2647e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_44) _let_3) (exists ((V2612l_27_2E0 u) (V2613e1_2E0 u) (V2614e2_2E0 u) (V2615e3_2E0 u) (V2616e4_2E0 u) (V2617e5_2E0 u) (V2618e6_2E0 u) (V2619e7_2E0 u) (V2620e8_2E0 u) (V2621e9_2E0 u) (V2622e10_2E0 u) (V2623e11_2E0 u) (V2624e12_2E0 u) (V2625e13_2E0 u) (V2626e14_2E0 u) (V2627e15_2E0 u) (V2628e16_2E0 u) (V2629e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2612l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2613e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2614e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2615e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2616e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2617e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2618e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2619e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2620e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2621e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2622e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2623e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2624e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2625e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2626e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2627e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2628e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2629e17_2E0)) _let_2))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V2594l_27_2E0 u) (V2595e1_2E0 u) (V2596e2_2E0 u) (V2597e3_2E0 u) (V2598e4_2E0 u) (V2599e5_2E0 u) (V2600e6_2E0 u) (V2601e7_2E0 u) (V2602e8_2E0 u) (V2603e9_2E0 u) (V2604e10_2E0 u) (V2605e11_2E0 u) (V2606e12_2E0 u) (V2607e13_2E0 u) (V2608e14_2E0 u) (V2609e15_2E0 u) (V2610e16_2E0 u) (V2611e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2595e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2596e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2597e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2598e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2599e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2600e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2601e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2602e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2603e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2604e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2605e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2606e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2607e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2608e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2609e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2610e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2611e17_2E0)) (_let_1 V2594l_27_2E0))))))))))))))))))))))))))))))))))))))) (_let_11 _let_39)) (= (exists ((V2540l_27_2E0 u) (V2541e1_2E0 u) (V2542e2_2E0 u) (V2543e3_2E0 u) (V2544e4_2E0 u) (V2545e5_2E0 u) (V2546e6_2E0 u) (V2547e7_2E0 u) (V2548e8_2E0 u) (V2549e9_2E0 u) (V2550e10_2E0 u) (V2551e11_2E0 u) (V2552e12_2E0 u) (V2553e13_2E0 u) (V2554e14_2E0 u) (V2555e15_2E0 u) (V2556e16_2E0 u) (V2557e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2541e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2542e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2543e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2544e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2545e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2546e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2547e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2548e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2549e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2550e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2551e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2552e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2553e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2554e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2555e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2556e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2557e17_2E0)) (_let_1 V2540l_27_2E0))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_43) _let_3)) (= (exists ((V2523e1_2E0 u) (V2524e2_2E0 u) (V2525e3_2E0 u) (V2526e4_2E0 u) (V2527e5_2E0 u) (V2528e6_2E0 u) (V2529e7_2E0 u) (V2530e8_2E0 u) (V2531e9_2E0 u) (V2532e10_2E0 u) (V2533e11_2E0 u) (V2534e12_2E0 u) (V2535e13_2E0 u) (V2536e14_2E0 u) (V2537e15_2E0 u) (V2538e16_2E0 u) (V2539e17_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2523e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2524e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2525e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2526e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2527e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2528e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2529e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2530e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2531e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2532e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2533e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2534e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2535e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2536e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2537e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2538e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2539e17_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))) (= _let_39 _let_3)) (= (exists ((V2468l_27_2E0 u) (V2469e1_2E0 u) (V2470e2_2E0 u) (V2471e3_2E0 u) (V2472e4_2E0 u) (V2473e5_2E0 u) (V2474e6_2E0 u) (V2475e7_2E0 u) (V2476e8_2E0 u) (V2477e9_2E0 u) (V2478e10_2E0 u) (V2479e11_2E0 u) (V2480e12_2E0 u) (V2481e13_2E0 u) (V2482e14_2E0 u) (V2483e15_2E0 u) (V2484e16_2E0 u) (V2485e17_2E0 u) (V2486e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2468l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2469e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2470e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2471e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2472e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2473e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2474e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2475e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2476e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2477e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2478e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2479e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2480e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2481e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2482e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2483e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2484e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2485e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2486e18_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_41)) (= (exists ((V2373l_27_2E0 u) (V2374e1_2E0 u) (V2375e2_2E0 u) (V2376e3_2E0 u) (V2377e4_2E0 u) (V2378e5_2E0 u) (V2379e6_2E0 u) (V2380e7_2E0 u) (V2381e8_2E0 u) (V2382e9_2E0 u) (V2383e10_2E0 u) (V2384e11_2E0 u) (V2385e12_2E0 u) (V2386e13_2E0 u) (V2387e14_2E0 u) (V2388e15_2E0 u) (V2389e16_2E0 u) (V2390e17_2E0 u) (V2391e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2373l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2374e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2375e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2376e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2377e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2378e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2379e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2380e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2381e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2382e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2383e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2384e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2385e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2386e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2387e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2388e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2389e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2390e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2391e18_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_40)) (= (exists ((V2354l_27_2E0 u) (V2355e1_2E0 u) (V2356e2_2E0 u) (V2357e3_2E0 u) (V2358e4_2E0 u) (V2359e5_2E0 u) (V2360e6_2E0 u) (V2361e7_2E0 u) (V2362e8_2E0 u) (V2363e9_2E0 u) (V2364e10_2E0 u) (V2365e11_2E0 u) (V2366e12_2E0 u) (V2367e13_2E0 u) (V2368e14_2E0 u) (V2369e15_2E0 u) (V2370e16_2E0 u) (V2371e17_2E0 u) (V2372e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2354l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2355e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2356e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2357e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2358e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2359e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2360e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2361e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2362e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2363e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2364e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2365e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2366e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2367e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2368e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2369e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2370e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2371e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2372e18_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_40) _let_3)) (= (exists ((V2297l_27_2E0 u) (V2298e1_2E0 u) (V2299e2_2E0 u) (V2300e3_2E0 u) (V2301e4_2E0 u) (V2302e5_2E0 u) (V2303e6_2E0 u) (V2304e7_2E0 u) (V2305e8_2E0 u) (V2306e9_2E0 u) (V2307e10_2E0 u) (V2308e11_2E0 u) (V2309e12_2E0 u) (V2310e13_2E0 u) (V2311e14_2E0 u) (V2312e15_2E0 u) (V2313e16_2E0 u) (V2314e17_2E0 u) (V2315e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2298e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2299e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2300e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2301e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2302e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2303e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2304e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2305e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2306e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2307e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2308e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2309e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2310e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2311e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2312e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2313e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2314e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2315e18_2E0)) (_let_1 V2297l_27_2E0))))))))))))))))))))))))))))))))))))))))) (_let_21 _let_39)) (= (exists ((V2278l_27_2E0 u) (V2279e1_2E0 u) (V2280e2_2E0 u) (V2281e3_2E0 u) (V2282e4_2E0 u) (V2283e5_2E0 u) (V2284e6_2E0 u) (V2285e7_2E0 u) (V2286e8_2E0 u) (V2287e9_2E0 u) (V2288e10_2E0 u) (V2289e11_2E0 u) (V2290e12_2E0 u) (V2291e13_2E0 u) (V2292e14_2E0 u) (V2293e15_2E0 u) (V2294e16_2E0 u) (V2295e17_2E0 u) (V2296e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2279e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2280e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2281e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2282e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2283e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2284e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2285e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2286e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2287e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2288e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2289e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2290e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2291e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2292e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2293e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2294e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2295e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2296e18_2E0)) (_let_1 V2278l_27_2E0))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_39) _let_3)) (= (= _let_3 _let_36) (exists ((V2242e1_2E0 u) (V2243e2_2E0 u) (V2244e3_2E0 u) (V2245e4_2E0 u) (V2246e5_2E0 u) (V2247e6_2E0 u) (V2248e7_2E0 u) (V2249e8_2E0 u) (V2250e9_2E0 u) (V2251e10_2E0 u) (V2252e11_2E0 u) (V2253e12_2E0 u) (V2254e13_2E0 u) (V2255e14_2E0 u) (V2256e15_2E0 u) (V2257e16_2E0 u) (V2258e17_2E0 u) (V2259e18_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2242e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2243e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2244e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2245e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2246e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2247e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2248e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2249e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2250e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2251e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2252e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2253e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2254e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2255e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2256e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2257e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2258e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2259e18_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))) (= (= _let_38 _let_3) (exists ((V2222l_27_2E0 u) (V2223e1_2E0 u) (V2224e2_2E0 u) (V2225e3_2E0 u) (V2226e4_2E0 u) (V2227e5_2E0 u) (V2228e6_2E0 u) (V2229e7_2E0 u) (V2230e8_2E0 u) (V2231e9_2E0 u) (V2232e10_2E0 u) (V2233e11_2E0 u) (V2234e12_2E0 u) (V2235e13_2E0 u) (V2236e14_2E0 u) (V2237e15_2E0 u) (V2238e16_2E0 u) (V2239e17_2E0 u) (V2240e18_2E0 u) (V2241e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2222l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2223e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2224e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2225e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2226e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2227e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2228e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2229e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2230e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2231e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2232e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2233e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2234e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2235e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2236e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2237e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2238e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2239e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2240e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2241e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V2182l_27_2E0 u) (V2183e1_2E0 u) (V2184e2_2E0 u) (V2185e3_2E0 u) (V2186e4_2E0 u) (V2187e5_2E0 u) (V2188e6_2E0 u) (V2189e7_2E0 u) (V2190e8_2E0 u) (V2191e9_2E0 u) (V2192e10_2E0 u) (V2193e11_2E0 u) (V2194e12_2E0 u) (V2195e13_2E0 u) (V2196e14_2E0 u) (V2197e15_2E0 u) (V2198e16_2E0 u) (V2199e17_2E0 u) (V2200e18_2E0 u) (V2201e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2182l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2191e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2192e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2193e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2194e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2195e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2196e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2197e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2198e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2199e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2200e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2201e19_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))) (= _let_37 _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_37) _let_3) (exists ((V2082l_27_2E0 u) (V2083e1_2E0 u) (V2084e2_2E0 u) (V2085e3_2E0 u) (V2086e4_2E0 u) (V2087e5_2E0 u) (V2088e6_2E0 u) (V2089e7_2E0 u) (V2090e8_2E0 u) (V2091e9_2E0 u) (V2092e10_2E0 u) (V2093e11_2E0 u) (V2094e12_2E0 u) (V2095e13_2E0 u) (V2096e14_2E0 u) (V2097e15_2E0 u) (V2098e16_2E0 u) (V2099e17_2E0 u) (V2100e18_2E0 u) (V2101e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2082l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2083e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2084e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2085e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2086e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2087e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2088e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2089e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2090e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2091e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2092e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2093e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2094e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2095e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2096e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2097e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2098e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2099e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2100e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2101e19_2E0)) _let_2))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V2042l_27_2E0 u) (V2043e1_2E0 u) (V2044e2_2E0 u) (V2045e3_2E0 u) (V2046e4_2E0 u) (V2047e5_2E0 u) (V2048e6_2E0 u) (V2049e7_2E0 u) (V2050e8_2E0 u) (V2051e9_2E0 u) (V2052e10_2E0 u) (V2053e11_2E0 u) (V2054e12_2E0 u) (V2055e13_2E0 u) (V2056e14_2E0 u) (V2057e15_2E0 u) (V2058e16_2E0 u) (V2059e17_2E0 u) (V2060e18_2E0 u) (V2061e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2043e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2044e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2045e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2046e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2047e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2048e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2049e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2050e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2051e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2052e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2053e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2054e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2055e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2056e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2057e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2058e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2059e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2060e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2061e19_2E0)) (_let_1 V2042l_27_2E0))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_30) _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_36) _let_3) (exists ((V2002l_27_2E0 u) (V2003e1_2E0 u) (V2004e2_2E0 u) (V2005e3_2E0 u) (V2006e4_2E0 u) (V2007e5_2E0 u) (V2008e6_2E0 u) (V2009e7_2E0 u) (V2010e8_2E0 u) (V2011e9_2E0 u) (V2012e10_2E0 u) (V2013e11_2E0 u) (V2014e12_2E0 u) (V2015e13_2E0 u) (V2016e14_2E0 u) (V2017e15_2E0 u) (V2018e16_2E0 u) (V2019e17_2E0 u) (V2020e18_2E0 u) (V2021e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2003e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2004e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2005e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2006e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2007e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2008e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2009e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2010e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2011e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2012e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2013e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2014e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2015e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2016e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2017e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2018e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2019e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2020e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2021e19_2E0)) (_let_1 V2002l_27_2E0)))))))))))))))))))))))))))))))))))))))))))) (= (= _let_30 _let_3) (exists ((V1983e1_2E0 u) (V1984e2_2E0 u) (V1985e3_2E0 u) (V1986e4_2E0 u) (V1987e5_2E0 u) (V1988e6_2E0 u) (V1989e7_2E0 u) (V1990e8_2E0 u) (V1991e9_2E0 u) (V1992e10_2E0 u) (V1993e11_2E0 u) (V1994e12_2E0 u) (V1995e13_2E0 u) (V1996e14_2E0 u) (V1997e15_2E0 u) (V1998e16_2E0 u) (V1999e17_2E0 u) (V2000e18_2E0 u) (V2001e19_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1983e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1984e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1985e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1986e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1987e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1988e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1989e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1990e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1991e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1992e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1993e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1994e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1995e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1996e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1997e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1998e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1999e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2000e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2001e19_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1922l_27_2E0 u) (V1923e1_2E0 u) (V1924e2_2E0 u) (V1925e3_2E0 u) (V1926e4_2E0 u) (V1927e5_2E0 u) (V1928e6_2E0 u) (V1929e7_2E0 u) (V1930e8_2E0 u) (V1931e9_2E0 u) (V1932e10_2E0 u) (V1933e11_2E0 u) (V1934e12_2E0 u) (V1935e13_2E0 u) (V1936e14_2E0 u) (V1937e15_2E0 u) (V1938e16_2E0 u) (V1939e17_2E0 u) (V1940e18_2E0 u) (V1941e19_2E0 u) (V1942e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1922l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1923e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1924e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1925e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1926e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1927e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1928e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1929e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1930e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1931e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1932e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1933e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1934e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1935e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1936e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1937e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1938e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1939e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1940e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1941e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1942e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_33)) (= (= _let_32 _let_3) (exists ((V1901l_27_2E0 u) (V1902e1_2E0 u) (V1903e2_2E0 u) (V1904e3_2E0 u) (V1905e4_2E0 u) (V1906e5_2E0 u) (V1907e6_2E0 u) (V1908e7_2E0 u) (V1909e8_2E0 u) (V1910e9_2E0 u) (V1911e10_2E0 u) (V1912e11_2E0 u) (V1913e12_2E0 u) (V1914e13_2E0 u) (V1915e14_2E0 u) (V1916e15_2E0 u) (V1917e16_2E0 u) (V1918e17_2E0 u) (V1919e18_2E0 u) (V1920e19_2E0 u) (V1921e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1901l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1902e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1903e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1904e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1905e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1906e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1907e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1908e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1909e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1910e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1911e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1912e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1913e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1914e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1915e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1916e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1917e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1918e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1919e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1920e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1921e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V1838l_27_2E0 u) (V1839e1_2E0 u) (V1840e2_2E0 u) (V1841e3_2E0 u) (V1842e4_2E0 u) (V1843e5_2E0 u) (V1844e6_2E0 u) (V1845e7_2E0 u) (V1846e8_2E0 u) (V1847e9_2E0 u) (V1848e10_2E0 u) (V1849e11_2E0 u) (V1850e12_2E0 u) (V1851e13_2E0 u) (V1852e14_2E0 u) (V1853e15_2E0 u) (V1854e16_2E0 u) (V1855e17_2E0 u) (V1856e18_2E0 u) (V1857e19_2E0 u) (V1858e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1838l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1839e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1840e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1841e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1842e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1843e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1844e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1845e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1846e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1847e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1848e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1849e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1850e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1851e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1852e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1853e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1854e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1855e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1856e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1857e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1858e20_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_33) _let_3)) (= (_let_11 _let_32) (exists ((V1817l_27_2E0 u) (V1818e1_2E0 u) (V1819e2_2E0 u) (V1820e3_2E0 u) (V1821e4_2E0 u) (V1822e5_2E0 u) (V1823e6_2E0 u) (V1824e7_2E0 u) (V1825e8_2E0 u) (V1826e9_2E0 u) (V1827e10_2E0 u) (V1828e11_2E0 u) (V1829e12_2E0 u) (V1830e13_2E0 u) (V1831e14_2E0 u) (V1832e15_2E0 u) (V1833e16_2E0 u) (V1834e17_2E0 u) (V1835e18_2E0 u) (V1836e19_2E0 u) (V1837e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1817l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1818e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1819e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1820e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1821e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1822e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1823e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1824e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1825e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1826e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1827e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1828e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1829e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1830e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1831e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1832e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1833e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1834e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1835e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1836e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1837e20_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_11 _let_31) (exists ((V1775l_27_2E0 u) (V1776e1_2E0 u) (V1777e2_2E0 u) (V1778e3_2E0 u) (V1779e4_2E0 u) (V1780e5_2E0 u) (V1781e6_2E0 u) (V1782e7_2E0 u) (V1783e8_2E0 u) (V1784e9_2E0 u) (V1785e10_2E0 u) (V1786e11_2E0 u) (V1787e12_2E0 u) (V1788e13_2E0 u) (V1789e14_2E0 u) (V1790e15_2E0 u) (V1791e16_2E0 u) (V1792e17_2E0 u) (V1793e18_2E0 u) (V1794e19_2E0 u) (V1795e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1776e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1777e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1778e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1779e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1780e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1781e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1782e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1783e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1784e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1785e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1786e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1787e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1788e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1789e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1790e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1791e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1792e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1793e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1794e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1795e20_2E0)) (_let_1 V1775l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))) (= (_let_21 _let_30) (exists ((V1733l_27_2E0 u) (V1734e1_2E0 u) (V1735e2_2E0 u) (V1736e3_2E0 u) (V1737e4_2E0 u) (V1738e5_2E0 u) (V1739e6_2E0 u) (V1740e7_2E0 u) (V1741e8_2E0 u) (V1742e9_2E0 u) (V1743e10_2E0 u) (V1744e11_2E0 u) (V1745e12_2E0 u) (V1746e13_2E0 u) (V1747e14_2E0 u) (V1748e15_2E0 u) (V1749e16_2E0 u) (V1750e17_2E0 u) (V1751e18_2E0 u) (V1752e19_2E0 u) (V1753e20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1734e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1735e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1736e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1737e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1738e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1739e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1740e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1741e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1742e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1743e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1744e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1745e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1746e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1747e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1748e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1749e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1750e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1751e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1752e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1753e20_2E0)) (_let_1 V1733l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))) (= (= _let_28 _let_3) (exists ((V1650l_27_2E0 u) (V1651e1_2E0 u) (V1652e2_2E0 u) (V1653e3_2E0 u) (V1654e4_2E0 u) (V1655e5_2E0 u) (V1656e6_2E0 u) (V1657e7_2E0 u) (V1658e8_2E0 u) (V1659e9_2E0 u) (V1660e10_2E0 u) (V1661e11_2E0 u) (V1662e12_2E0 u) (V1663e13_2E0 u) (V1664e14_2E0 u) (V1665e15_2E0 u) (V1666e16_2E0 u) (V1667e17_2E0 u) (V1668e18_2E0 u) (V1669e19_2E0 u) (V1670e20_2E0 u) (V1671e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1650l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1651e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1652e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1653e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1654e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1655e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1656e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1657e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1658e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1659e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1660e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1661e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1662e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1663e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1664e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1665e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1666e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1667e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1668e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1669e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1670e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1671e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_11 _let_28) (exists ((V1562l_27_2E0 u) (V1563e1_2E0 u) (V1564e2_2E0 u) (V1565e3_2E0 u) (V1566e4_2E0 u) (V1567e5_2E0 u) (V1568e6_2E0 u) (V1569e7_2E0 u) (V1570e8_2E0 u) (V1571e9_2E0 u) (V1572e10_2E0 u) (V1573e11_2E0 u) (V1574e12_2E0 u) (V1575e13_2E0 u) (V1576e14_2E0 u) (V1577e15_2E0 u) (V1578e16_2E0 u) (V1579e17_2E0 u) (V1580e18_2E0 u) (V1581e19_2E0 u) (V1582e20_2E0 u) (V1583e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1562l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1563e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1564e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1565e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1566e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1567e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1568e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1569e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1570e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1571e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1572e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1573e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1574e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1575e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1576e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1577e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1578e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1579e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1580e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1581e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1582e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1583e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_28) _let_3) (exists ((V1540l_27_2E0 u) (V1541e1_2E0 u) (V1542e2_2E0 u) (V1543e3_2E0 u) (V1544e4_2E0 u) (V1545e5_2E0 u) (V1546e6_2E0 u) (V1547e7_2E0 u) (V1548e8_2E0 u) (V1549e9_2E0 u) (V1550e10_2E0 u) (V1551e11_2E0 u) (V1552e12_2E0 u) (V1553e13_2E0 u) (V1554e14_2E0 u) (V1555e15_2E0 u) (V1556e16_2E0 u) (V1557e17_2E0 u) (V1558e18_2E0 u) (V1559e19_2E0 u) (V1560e20_2E0 u) (V1561e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1540l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1541e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1542e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1543e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1544e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1545e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1546e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1547e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1548e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1549e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1550e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1551e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1552e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1553e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1554e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1555e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1556e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1557e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1558e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1559e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1560e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1561e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_27) (exists ((V1518l_27_2E0 u) (V1519e1_2E0 u) (V1520e2_2E0 u) (V1521e3_2E0 u) (V1522e4_2E0 u) (V1523e5_2E0 u) (V1524e6_2E0 u) (V1525e7_2E0 u) (V1526e8_2E0 u) (V1527e9_2E0 u) (V1528e10_2E0 u) (V1529e11_2E0 u) (V1530e12_2E0 u) (V1531e13_2E0 u) (V1532e14_2E0 u) (V1533e15_2E0 u) (V1534e16_2E0 u) (V1535e17_2E0 u) (V1536e18_2E0 u) (V1537e19_2E0 u) (V1538e20_2E0 u) (V1539e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1518l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1519e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1520e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1521e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1522e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1523e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1524e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1525e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1526e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1527e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1528e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1529e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1530e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1531e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1532e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1533e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1534e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1535e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1536e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1537e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1538e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1539e21_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V1496l_27_2E0 u) (V1497e1_2E0 u) (V1498e2_2E0 u) (V1499e3_2E0 u) (V1500e4_2E0 u) (V1501e5_2E0 u) (V1502e6_2E0 u) (V1503e7_2E0 u) (V1504e8_2E0 u) (V1505e9_2E0 u) (V1506e10_2E0 u) (V1507e11_2E0 u) (V1508e12_2E0 u) (V1509e13_2E0 u) (V1510e14_2E0 u) (V1511e15_2E0 u) (V1512e16_2E0 u) (V1513e17_2E0 u) (V1514e18_2E0 u) (V1515e19_2E0 u) (V1516e20_2E0 u) (V1517e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1496l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1497e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1498e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1499e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1500e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1501e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1502e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1503e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1504e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1505e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1506e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1507e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1508e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1509e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1510e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1511e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1512e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1513e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1514e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1515e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1516e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1517e21_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_27) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_24) _let_3) (exists ((V1452l_27_2E0 u) (V1453e1_2E0 u) (V1454e2_2E0 u) (V1455e3_2E0 u) (V1456e4_2E0 u) (V1457e5_2E0 u) (V1458e6_2E0 u) (V1459e7_2E0 u) (V1460e8_2E0 u) (V1461e9_2E0 u) (V1462e10_2E0 u) (V1463e11_2E0 u) (V1464e12_2E0 u) (V1465e13_2E0 u) (V1466e14_2E0 u) (V1467e15_2E0 u) (V1468e16_2E0 u) (V1469e17_2E0 u) (V1470e18_2E0 u) (V1471e19_2E0 u) (V1472e20_2E0 u) (V1473e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1453e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1454e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1455e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1456e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1457e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1458e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1459e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1460e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1461e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1462e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1463e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1464e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1465e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1466e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1467e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1468e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1469e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1470e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1471e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1472e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1473e21_2E0)) (_let_1 V1452l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))) (= (= _let_3 _let_24) (exists ((V1366e1_2E0 u) (V1367e2_2E0 u) (V1368e3_2E0 u) (V1369e4_2E0 u) (V1370e5_2E0 u) (V1371e6_2E0 u) (V1372e7_2E0 u) (V1373e8_2E0 u) (V1374e9_2E0 u) (V1375e10_2E0 u) (V1376e11_2E0 u) (V1377e12_2E0 u) (V1378e13_2E0 u) (V1379e14_2E0 u) (V1380e15_2E0 u) (V1381e16_2E0 u) (V1382e17_2E0 u) (V1383e18_2E0 u) (V1384e19_2E0 u) (V1385e20_2E0 u) (V1386e21_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1366e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1367e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1368e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1369e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1370e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1371e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1372e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1373e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1374e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1375e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1376e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1377e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1378e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1379e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1380e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1381e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1382e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1383e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1384e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1385e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1386e21_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1343l_27_2E0 u) (V1344e1_2E0 u) (V1345e2_2E0 u) (V1346e3_2E0 u) (V1347e4_2E0 u) (V1348e5_2E0 u) (V1349e6_2E0 u) (V1350e7_2E0 u) (V1351e8_2E0 u) (V1352e9_2E0 u) (V1353e10_2E0 u) (V1354e11_2E0 u) (V1355e12_2E0 u) (V1356e13_2E0 u) (V1357e14_2E0 u) (V1358e15_2E0 u) (V1359e16_2E0 u) (V1360e17_2E0 u) (V1361e18_2E0 u) (V1362e19_2E0 u) (V1363e20_2E0 u) (V1364e21_2E0 u) (V1365e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1343l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1344e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1345e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1346e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1347e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1348e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1349e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1350e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1351e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1352e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1353e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1354e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1355e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1356e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1357e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1358e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1359e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1360e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1361e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1362e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1363e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1364e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1365e22_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_26 _let_3)) (= (exists ((V1297l_27_2E0 u) (V1298e1_2E0 u) (V1299e2_2E0 u) (V1300e3_2E0 u) (V1301e4_2E0 u) (V1302e5_2E0 u) (V1303e6_2E0 u) (V1304e7_2E0 u) (V1305e8_2E0 u) (V1306e9_2E0 u) (V1307e10_2E0 u) (V1308e11_2E0 u) (V1309e12_2E0 u) (V1310e13_2E0 u) (V1311e14_2E0 u) (V1312e15_2E0 u) (V1313e16_2E0 u) (V1314e17_2E0 u) (V1315e18_2E0 u) (V1316e19_2E0 u) (V1317e20_2E0 u) (V1318e21_2E0 u) (V1319e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1297l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1298e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1299e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1300e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1301e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1302e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1303e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1304e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1305e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1306e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1307e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1308e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1309e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1310e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1311e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1312e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1313e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1314e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1315e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1316e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1317e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1318e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1319e22_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_25 _let_3)) (= (exists ((V1251l_27_2E0 u) (V1252e1_2E0 u) (V1253e2_2E0 u) (V1254e3_2E0 u) (V1255e4_2E0 u) (V1256e5_2E0 u) (V1257e6_2E0 u) (V1258e7_2E0 u) (V1259e8_2E0 u) (V1260e9_2E0 u) (V1261e10_2E0 u) (V1262e11_2E0 u) (V1263e12_2E0 u) (V1264e13_2E0 u) (V1265e14_2E0 u) (V1266e15_2E0 u) (V1267e16_2E0 u) (V1268e17_2E0 u) (V1269e18_2E0 u) (V1270e19_2E0 u) (V1271e20_2E0 u) (V1272e21_2E0 u) (V1273e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1251l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1252e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1253e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1254e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1255e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1256e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1257e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1258e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1259e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1260e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1261e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1262e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1263e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1264e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1265e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1266e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1267e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1268e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1269e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1270e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1271e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1272e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1273e22_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_26)) (= (exists ((V1182l_27_2E0 u) (V1183e1_2E0 u) (V1184e2_2E0 u) (V1185e3_2E0 u) (V1186e4_2E0 u) (V1187e5_2E0 u) (V1188e6_2E0 u) (V1189e7_2E0 u) (V1190e8_2E0 u) (V1191e9_2E0 u) (V1192e10_2E0 u) (V1193e11_2E0 u) (V1194e12_2E0 u) (V1195e13_2E0 u) (V1196e14_2E0 u) (V1197e15_2E0 u) (V1198e16_2E0 u) (V1199e17_2E0 u) (V1200e18_2E0 u) (V1201e19_2E0 u) (V1202e20_2E0 u) (V1203e21_2E0 u) (V1204e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1182l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1191e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1192e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1193e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1194e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1195e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1196e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1197e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1198e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1199e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1200e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1201e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1202e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1203e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1204e22_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_25) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_3) (exists ((V1136l_27_2E0 u) (V1137e1_2E0 u) (V1138e2_2E0 u) (V1139e3_2E0 u) (V1140e4_2E0 u) (V1141e5_2E0 u) (V1142e6_2E0 u) (V1143e7_2E0 u) (V1144e8_2E0 u) (V1145e9_2E0 u) (V1146e10_2E0 u) (V1147e11_2E0 u) (V1148e12_2E0 u) (V1149e13_2E0 u) (V1150e14_2E0 u) (V1151e15_2E0 u) (V1152e16_2E0 u) (V1153e17_2E0 u) (V1154e18_2E0 u) (V1155e19_2E0 u) (V1156e20_2E0 u) (V1157e21_2E0 u) (V1158e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1137e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1138e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1139e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1140e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1141e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1142e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1143e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1144e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1145e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1146e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1147e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1148e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1149e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1150e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1151e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1152e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1153e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1154e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1155e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1156e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1157e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1158e22_2E0)) (_let_1 V1136l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V1090l_27_2E0 u) (V1091e1_2E0 u) (V1092e2_2E0 u) (V1093e3_2E0 u) (V1094e4_2E0 u) (V1095e5_2E0 u) (V1096e6_2E0 u) (V1097e7_2E0 u) (V1098e8_2E0 u) (V1099e9_2E0 u) (V1100e10_2E0 u) (V1101e11_2E0 u) (V1102e12_2E0 u) (V1103e13_2E0 u) (V1104e14_2E0 u) (V1105e15_2E0 u) (V1106e16_2E0 u) (V1107e17_2E0 u) (V1108e18_2E0 u) (V1109e19_2E0 u) (V1110e20_2E0 u) (V1111e21_2E0 u) (V1112e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1091e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1092e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1093e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1094e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1095e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1096e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1097e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1098e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1099e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1100e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1101e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1102e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1103e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1104e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1105e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1106e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1107e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1108e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1109e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1110e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1111e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1112e22_2E0)) (_let_1 V1090l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_24) _let_3)) (= (= _let_3 _let_20) (exists ((V1046e1_2E0 u) (V1047e2_2E0 u) (V1048e3_2E0 u) (V1049e4_2E0 u) (V1050e5_2E0 u) (V1051e6_2E0 u) (V1052e7_2E0 u) (V1053e8_2E0 u) (V1054e9_2E0 u) (V1055e10_2E0 u) (V1056e11_2E0 u) (V1057e12_2E0 u) (V1058e13_2E0 u) (V1059e14_2E0 u) (V1060e15_2E0 u) (V1061e16_2E0 u) (V1062e17_2E0 u) (V1063e18_2E0 u) (V1064e19_2E0 u) (V1065e20_2E0 u) (V1066e21_2E0 u) (V1067e22_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1046e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1047e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1048e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1049e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1050e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1051e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1052e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1053e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1054e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1055e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1056e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1057e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1058e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1059e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1060e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1061e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1062e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1063e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1064e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1065e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1066e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1067e22_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))))) (= (= _let_23 _let_3) (exists ((V1022l_27_2E0 u) (V1023e1_2E0 u) (V1024e2_2E0 u) (V1025e3_2E0 u) (V1026e4_2E0 u) (V1027e5_2E0 u) (V1028e6_2E0 u) (V1029e7_2E0 u) (V1030e8_2E0 u) (V1031e9_2E0 u) (V1032e10_2E0 u) (V1033e11_2E0 u) (V1034e12_2E0 u) (V1035e13_2E0 u) (V1036e14_2E0 u) (V1037e15_2E0 u) (V1038e16_2E0 u) (V1039e17_2E0 u) (V1040e18_2E0 u) (V1041e19_2E0 u) (V1042e20_2E0 u) (V1043e21_2E0 u) (V1044e22_2E0 u) (V1045e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1022l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1023e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1024e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1025e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1026e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1027e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1028e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1029e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1030e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1031e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1032e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1033e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1034e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1035e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1036e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1037e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1038e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1039e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1040e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1041e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1042e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1043e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1044e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1045e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V950l_27_2E0 u) (V951e1_2E0 u) (V952e2_2E0 u) (V953e3_2E0 u) (V954e4_2E0 u) (V955e5_2E0 u) (V956e6_2E0 u) (V957e7_2E0 u) (V958e8_2E0 u) (V959e9_2E0 u) (V960e10_2E0 u) (V961e11_2E0 u) (V962e12_2E0 u) (V963e13_2E0 u) (V964e14_2E0 u) (V965e15_2E0 u) (V966e16_2E0 u) (V967e17_2E0 u) (V968e18_2E0 u) (V969e19_2E0 u) (V970e20_2E0 u) (V971e21_2E0 u) (V972e22_2E0 u) (V973e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V950l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V951e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V952e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V953e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V954e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V955e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V956e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V957e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V958e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V959e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V960e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V961e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V962e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V963e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V964e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V965e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V966e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V967e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V968e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V969e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V970e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V971e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V972e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V973e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_22)) (= (_let_11 _let_23) (exists ((V926l_27_2E0 u) (V927e1_2E0 u) (V928e2_2E0 u) (V929e3_2E0 u) (V930e4_2E0 u) (V931e5_2E0 u) (V932e6_2E0 u) (V933e7_2E0 u) (V934e8_2E0 u) (V935e9_2E0 u) (V936e10_2E0 u) (V937e11_2E0 u) (V938e12_2E0 u) (V939e13_2E0 u) (V940e14_2E0 u) (V941e15_2E0 u) (V942e16_2E0 u) (V943e17_2E0 u) (V944e18_2E0 u) (V945e19_2E0 u) (V946e20_2E0 u) (V947e21_2E0 u) (V948e22_2E0 u) (V949e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V926l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V927e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V928e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V929e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V930e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V931e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V932e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V933e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V934e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V935e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V936e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V937e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V938e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V939e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V940e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V941e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V942e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V943e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V944e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V945e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V946e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V947e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V948e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V949e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (_let_11 _let_22) (exists ((V878l_27_2E0 u) (V879e1_2E0 u) (V880e2_2E0 u) (V881e3_2E0 u) (V882e4_2E0 u) (V883e5_2E0 u) (V884e6_2E0 u) (V885e7_2E0 u) (V886e8_2E0 u) (V887e9_2E0 u) (V888e10_2E0 u) (V889e11_2E0 u) (V890e12_2E0 u) (V891e13_2E0 u) (V892e14_2E0 u) (V893e15_2E0 u) (V894e16_2E0 u) (V895e17_2E0 u) (V896e18_2E0 u) (V897e19_2E0 u) (V898e20_2E0 u) (V899e21_2E0 u) (V900e22_2E0 u) (V901e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V878l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V879e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V880e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V881e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V882e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V883e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V884e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V885e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V886e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V887e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V888e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V889e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V890e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V891e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V892e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V893e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V894e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V895e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V896e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V897e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V898e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V899e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V900e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V901e23_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V830l_27_2E0 u) (V831e1_2E0 u) (V832e2_2E0 u) (V833e3_2E0 u) (V834e4_2E0 u) (V835e5_2E0 u) (V836e6_2E0 u) (V837e7_2E0 u) (V838e8_2E0 u) (V839e9_2E0 u) (V840e10_2E0 u) (V841e11_2E0 u) (V842e12_2E0 u) (V843e13_2E0 u) (V844e14_2E0 u) (V845e15_2E0 u) (V846e16_2E0 u) (V847e17_2E0 u) (V848e18_2E0 u) (V849e19_2E0 u) (V850e20_2E0 u) (V851e21_2E0 u) (V852e22_2E0 u) (V853e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V831e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V832e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V833e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V834e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V835e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V836e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V837e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V838e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V839e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V840e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V841e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V842e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V843e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V844e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V845e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V846e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V847e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V848e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V849e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V850e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V851e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V852e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V853e23_2E0)) (_let_1 V830l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_14)) (= (exists ((V782l_27_2E0 u) (V783e1_2E0 u) (V784e2_2E0 u) (V785e3_2E0 u) (V786e4_2E0 u) (V787e5_2E0 u) (V788e6_2E0 u) (V789e7_2E0 u) (V790e8_2E0 u) (V791e9_2E0 u) (V792e10_2E0 u) (V793e11_2E0 u) (V794e12_2E0 u) (V795e13_2E0 u) (V796e14_2E0 u) (V797e15_2E0 u) (V798e16_2E0 u) (V799e17_2E0 u) (V800e18_2E0 u) (V801e19_2E0 u) (V802e20_2E0 u) (V803e21_2E0 u) (V804e22_2E0 u) (V805e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V783e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V784e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V785e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V786e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V787e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V788e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V789e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V790e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V791e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V792e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V793e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V794e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V795e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V796e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V797e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V798e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V799e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V800e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V801e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V802e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V803e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V804e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V805e23_2E0)) (_let_1 V782l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))) (_let_21 _let_20)) (= (exists ((V758l_27_2E0 u) (V759e1_2E0 u) (V760e2_2E0 u) (V761e3_2E0 u) (V762e4_2E0 u) (V763e5_2E0 u) (V764e6_2E0 u) (V765e7_2E0 u) (V766e8_2E0 u) (V767e9_2E0 u) (V768e10_2E0 u) (V769e11_2E0 u) (V770e12_2E0 u) (V771e13_2E0 u) (V772e14_2E0 u) (V773e15_2E0 u) (V774e16_2E0 u) (V775e17_2E0 u) (V776e18_2E0 u) (V777e19_2E0 u) (V778e20_2E0 u) (V779e21_2E0 u) (V780e22_2E0 u) (V781e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V759e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V760e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V761e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V762e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V763e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V764e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V765e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V766e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V767e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V768e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V769e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V770e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V771e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V772e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V773e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V774e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V775e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V776e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V777e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V778e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V779e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V780e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V781e23_2E0)) (_let_1 V758l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_20) _let_3)) (= (exists ((V735e1_2E0 u) (V736e2_2E0 u) (V737e3_2E0 u) (V738e4_2E0 u) (V739e5_2E0 u) (V740e6_2E0 u) (V741e7_2E0 u) (V742e8_2E0 u) (V743e9_2E0 u) (V744e10_2E0 u) (V745e11_2E0 u) (V746e12_2E0 u) (V747e13_2E0 u) (V748e14_2E0 u) (V749e15_2E0 u) (V750e16_2E0 u) (V751e17_2E0 u) (V752e18_2E0 u) (V753e19_2E0 u) (V754e20_2E0 u) (V755e21_2E0 u) (V756e22_2E0 u) (V757e23_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V735e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V736e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V737e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V738e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V739e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V740e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V741e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V742e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V743e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V744e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V745e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V746e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V747e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V748e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V749e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V750e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V751e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V752e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V753e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V754e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V755e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V756e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V757e23_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_14 _let_3)) (= (= _let_16 _let_3) (exists ((V687l_27_2E0 u) (V688e1_2E0 u) (V689e2_2E0 u) (V690e3_2E0 u) (V691e4_2E0 u) (V692e5_2E0 u) (V693e6_2E0 u) (V694e7_2E0 u) (V695e8_2E0 u) (V696e9_2E0 u) (V697e10_2E0 u) (V698e11_2E0 u) (V699e12_2E0 u) (V700e13_2E0 u) (V701e14_2E0 u) (V702e15_2E0 u) (V703e16_2E0 u) (V704e17_2E0 u) (V705e18_2E0 u) (V706e19_2E0 u) (V707e20_2E0 u) (V708e21_2E0 u) (V709e22_2E0 u) (V710e23_2E0 u) (V711e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V687l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V688e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V689e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V690e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V691e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V692e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V693e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V694e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V695e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V696e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V697e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V698e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V699e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V700e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V701e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V702e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V703e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V704e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V705e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V706e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V707e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V708e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V709e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V710e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V711e24_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V637l_27_2E0 u) (V638e1_2E0 u) (V639e2_2E0 u) (V640e3_2E0 u) (V641e4_2E0 u) (V642e5_2E0 u) (V643e6_2E0 u) (V644e7_2E0 u) (V645e8_2E0 u) (V646e9_2E0 u) (V647e10_2E0 u) (V648e11_2E0 u) (V649e12_2E0 u) (V650e13_2E0 u) (V651e14_2E0 u) (V652e15_2E0 u) (V653e16_2E0 u) (V654e17_2E0 u) (V655e18_2E0 u) (V656e19_2E0 u) (V657e20_2E0 u) (V658e21_2E0 u) (V659e22_2E0 u) (V660e23_2E0 u) (V661e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V637l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V638e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V639e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V640e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V641e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V642e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V643e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V644e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V645e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V646e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V647e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V648e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V649e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V650e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V651e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V652e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V653e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V654e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V655e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V656e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V657e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V658e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V659e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V660e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V661e24_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_15 _let_3)) (= (exists ((V612l_27_2E0 u) (V613e1_2E0 u) (V614e2_2E0 u) (V615e3_2E0 u) (V616e4_2E0 u) (V617e5_2E0 u) (V618e6_2E0 u) (V619e7_2E0 u) (V620e8_2E0 u) (V621e9_2E0 u) (V622e10_2E0 u) (V623e11_2E0 u) (V624e12_2E0 u) (V625e13_2E0 u) (V626e14_2E0 u) (V627e15_2E0 u) (V628e16_2E0 u) (V629e17_2E0 u) (V630e18_2E0 u) (V631e19_2E0 u) (V632e20_2E0 u) (V633e21_2E0 u) (V634e22_2E0 u) (V635e23_2E0 u) (V636e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V612l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V613e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V614e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V615e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V616e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V617e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V618e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V619e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V620e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V621e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V622e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V623e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V624e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V625e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V626e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V627e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V628e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V629e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V630e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V631e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V632e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V633e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V634e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V635e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V636e24_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_3 _let_15)) (= (_let_11 _let_15) (exists ((V537l_27_2E0 u) (V538e1_2E0 u) (V539e2_2E0 u) (V540e3_2E0 u) (V541e4_2E0 u) (V542e5_2E0 u) (V543e6_2E0 u) (V544e7_2E0 u) (V545e8_2E0 u) (V546e9_2E0 u) (V547e10_2E0 u) (V548e11_2E0 u) (V549e12_2E0 u) (V550e13_2E0 u) (V551e14_2E0 u) (V552e15_2E0 u) (V553e16_2E0 u) (V554e17_2E0 u) (V555e18_2E0 u) (V556e19_2E0 u) (V557e20_2E0 u) (V558e21_2E0 u) (V559e22_2E0 u) (V560e23_2E0 u) (V561e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V537l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V538e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V539e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V540e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V541e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V542e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V543e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V544e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V545e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V546e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V547e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V548e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V549e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V550e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V551e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V552e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V553e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V554e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V555e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V556e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V557e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V558e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V559e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V560e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V561e24_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V512l_27_2E0 u) (V513e1_2E0 u) (V514e2_2E0 u) (V515e3_2E0 u) (V516e4_2E0 u) (V517e5_2E0 u) (V518e6_2E0 u) (V519e7_2E0 u) (V520e8_2E0 u) (V521e9_2E0 u) (V522e10_2E0 u) (V523e11_2E0 u) (V524e12_2E0 u) (V525e13_2E0 u) (V526e14_2E0 u) (V527e15_2E0 u) (V528e16_2E0 u) (V529e17_2E0 u) (V530e18_2E0 u) (V531e19_2E0 u) (V532e20_2E0 u) (V533e21_2E0 u) (V534e22_2E0 u) (V535e23_2E0 u) (V536e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V512l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V513e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V514e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V515e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V516e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V517e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V518e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V519e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V520e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V521e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V522e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V523e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V524e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V525e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V526e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V527e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V528e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V529e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V530e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V531e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V532e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V533e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V534e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V535e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V536e24_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_3)) (= (_let_11 _let_9) (exists ((V487l_27_2E0 u) (V488e1_2E0 u) (V489e2_2E0 u) (V490e3_2E0 u) (V491e4_2E0 u) (V492e5_2E0 u) (V493e6_2E0 u) (V494e7_2E0 u) (V495e8_2E0 u) (V496e9_2E0 u) (V497e10_2E0 u) (V498e11_2E0 u) (V499e12_2E0 u) (V500e13_2E0 u) (V501e14_2E0 u) (V502e15_2E0 u) (V503e16_2E0 u) (V504e17_2E0 u) (V505e18_2E0 u) (V506e19_2E0 u) (V507e20_2E0 u) (V508e21_2E0 u) (V509e22_2E0 u) (V510e23_2E0 u) (V511e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V488e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V489e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V490e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V491e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V492e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V493e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V494e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V495e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V496e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V497e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V498e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V499e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V500e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V501e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V502e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V503e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V504e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V505e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V506e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V507e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V508e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V509e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V510e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V511e24_2E0)) (_let_1 V487l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_9) _let_3) (exists ((V462l_27_2E0 u) (V463e1_2E0 u) (V464e2_2E0 u) (V465e3_2E0 u) (V466e4_2E0 u) (V467e5_2E0 u) (V468e6_2E0 u) (V469e7_2E0 u) (V470e8_2E0 u) (V471e9_2E0 u) (V472e10_2E0 u) (V473e11_2E0 u) (V474e12_2E0 u) (V475e13_2E0 u) (V476e14_2E0 u) (V477e15_2E0 u) (V478e16_2E0 u) (V479e17_2E0 u) (V480e18_2E0 u) (V481e19_2E0 u) (V482e20_2E0 u) (V483e21_2E0 u) (V484e22_2E0 u) (V485e23_2E0 u) (V486e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V463e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V464e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V465e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V466e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V467e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V468e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V469e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V470e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V471e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V472e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V473e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V474e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V475e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V476e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V477e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V478e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V479e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V480e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V481e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V482e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V483e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V484e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V485e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V486e24_2E0)) (_let_1 V462l_27_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V412l_27_2E0 u) (V413e1_2E0 u) (V414e2_2E0 u) (V415e3_2E0 u) (V416e4_2E0 u) (V417e5_2E0 u) (V418e6_2E0 u) (V419e7_2E0 u) (V420e8_2E0 u) (V421e9_2E0 u) (V422e10_2E0 u) (V423e11_2E0 u) (V424e12_2E0 u) (V425e13_2E0 u) (V426e14_2E0 u) (V427e15_2E0 u) (V428e16_2E0 u) (V429e17_2E0 u) (V430e18_2E0 u) (V431e19_2E0 u) (V432e20_2E0 u) (V433e21_2E0 u) (V434e22_2E0 u) (V435e23_2E0 u) (V436e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V413e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V414e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V415e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V416e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V417e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V418e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V419e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V420e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V421e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V422e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V423e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V424e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V425e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V426e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V427e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V428e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V429e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V430e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V431e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V432e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V433e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V434e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V435e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V436e24_2E0)) (_let_1 V412l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_14) _let_3)) (= (exists ((V388e1_2E0 u) (V389e2_2E0 u) (V390e3_2E0 u) (V391e4_2E0 u) (V392e5_2E0 u) (V393e6_2E0 u) (V394e7_2E0 u) (V395e8_2E0 u) (V396e9_2E0 u) (V397e10_2E0 u) (V398e11_2E0 u) (V399e12_2E0 u) (V400e13_2E0 u) (V401e14_2E0 u) (V402e15_2E0 u) (V403e16_2E0 u) (V404e17_2E0 u) (V405e18_2E0 u) (V406e19_2E0 u) (V407e20_2E0 u) (V408e21_2E0 u) (V409e22_2E0 u) (V410e23_2E0 u) (V411e24_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V388e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V389e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V390e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V391e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V392e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V393e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V394e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V395e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V396e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V397e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V398e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V399e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V400e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V401e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V402e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V403e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V404e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V405e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V406e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V407e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V408e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V409e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V410e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V411e24_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))) (= _let_9 _let_3)) (= (= _let_3 _let_13) (exists ((V312l_27_2E0 u) (V313e1_2E0 u) (V314e2_2E0 u) (V315e3_2E0 u) (V316e4_2E0 u) (V317e5_2E0 u) (V318e6_2E0 u) (V319e7_2E0 u) (V320e8_2E0 u) (V321e9_2E0 u) (V322e10_2E0 u) (V323e11_2E0 u) (V324e12_2E0 u) (V325e13_2E0 u) (V326e14_2E0 u) (V327e15_2E0 u) (V328e16_2E0 u) (V329e17_2E0 u) (V330e18_2E0 u) (V331e19_2E0 u) (V332e20_2E0 u) (V333e21_2E0 u) (V334e22_2E0 u) (V335e23_2E0 u) (V336e24_2E0 u) (V337e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V312l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V313e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V314e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V315e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V316e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V317e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V318e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V319e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V320e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V321e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V322e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V323e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V324e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V325e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V326e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V327e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V328e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V329e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V330e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V331e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V332e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V333e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V334e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V335e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V336e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V337e25_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (= (exists ((V234l_27_2E0 u) (V235e1_2E0 u) (V236e2_2E0 u) (V237e3_2E0 u) (V238e4_2E0 u) (V239e5_2E0 u) (V240e6_2E0 u) (V241e7_2E0 u) (V242e8_2E0 u) (V243e9_2E0 u) (V244e10_2E0 u) (V245e11_2E0 u) (V246e12_2E0 u) (V247e13_2E0 u) (V248e14_2E0 u) (V249e15_2E0 u) (V250e16_2E0 u) (V251e17_2E0 u) (V252e18_2E0 u) (V253e19_2E0 u) (V254e20_2E0 u) (V255e21_2E0 u) (V256e22_2E0 u) (V257e23_2E0 u) (V258e24_2E0 u) (V259e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V234l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V235e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V236e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V237e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V238e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V239e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V240e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V241e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V242e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V243e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V244e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V245e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V246e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V247e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V248e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V249e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V250e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V251e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V252e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V253e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V254e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V255e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V256e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V257e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V258e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V259e25_2E0)) _let_2)))))))))))))))))))))))))))))))))))))))))))))))))))))))) (_let_11 _let_13)) (= (exists ((V182l_27_2E0 u) (V183e1_2E0 u) (V184e2_2E0 u) (V185e3_2E0 u) (V186e4_2E0 u) (V187e5_2E0 u) (V188e6_2E0 u) (V189e7_2E0 u) (V190e8_2E0 u) (V191e9_2E0 u) (V192e10_2E0 u) (V193e11_2E0 u) (V194e12_2E0 u) (V195e13_2E0 u) (V196e14_2E0 u) (V197e15_2E0 u) (V198e16_2E0 u) (V199e17_2E0 u) (V200e18_2E0 u) (V201e19_2E0 u) (V202e20_2E0 u) (V203e21_2E0 u) (V204e22_2E0 u) (V205e23_2E0 u) (V206e24_2E0 u) (V207e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V182l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V191e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V192e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V193e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V194e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V195e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V196e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V197e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V198e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V199e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V200e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V201e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V202e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V203e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V204e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V205e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V206e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V207e25_2E0)) _let_2))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_11 _let_10)) (= (exists ((V52l_27_2E0 u) (V53e1_2E0 u) (V54e2_2E0 u) (V55e3_2E0 u) (V56e4_2E0 u) (V57e5_2E0 u) (V58e6_2E0 u) (V59e7_2E0 u) (V60e8_2E0 u) (V61e9_2E0 u) (V62e10_2E0 u) (V63e11_2E0 u) (V64e12_2E0 u) (V65e13_2E0 u) (V66e14_2E0 u) (V67e15_2E0 u) (V68e16_2E0 u) (V69e17_2E0 u) (V70e18_2E0 u) (V71e19_2E0 u) (V72e20_2E0 u) (V73e21_2E0 u) (V74e22_2E0 u) (V75e23_2E0 u) (V76e24_2E0 u) (V77e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V53e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V54e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V55e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V56e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V57e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V58e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V59e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V60e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V61e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V62e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V63e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V64e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V65e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V66e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V67e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V68e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V69e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V70e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V71e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V72e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V73e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V74e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V75e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V76e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V77e25_2E0)) (_let_1 V52l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_9) _let_3)) (= (= _let_7 _let_3) (exists ((V27e1_2E0 u) (V28e2_2E0 u) (V29e3_2E0 u) (V30e4_2E0 u) (V31e5_2E0 u) (V32e6_2E0 u) (V33e7_2E0 u) (V34e8_2E0 u) (V35e9_2E0 u) (V36e10_2E0 u) (V37e11_2E0 u) (V38e12_2E0 u) (V39e13_2E0 u) (V40e14_2E0 u) (V41e15_2E0 u) (V42e16_2E0 u) (V43e17_2E0 u) (V44e18_2E0 u) (V45e19_2E0 u) (V46e20_2E0 u) (V47e21_2E0 u) (V48e22_2E0 u) (V49e23_2E0 u) (V50e24_2E0 u) (V51e25_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V30e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V32e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V33e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V36e10_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V37e11_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V38e12_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V39e13_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V40e14_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V41e15_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V42e16_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V43e17_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V44e18_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V45e19_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V46e20_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V47e21_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V48e22_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V49e23_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V50e24_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V51e25_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0p Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0p))))) ((s A_27b) V2x_2E0)))) V0p)))) (forall ((V0p Bool) (V1i_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1i_2E0)) ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0p))))))) mono_2Ec_2Ebool_2ET)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d)) (and (forall ((V0a_2E0 u) (V1a_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a_27_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s (tyop_2Efcp_2Ebit1 A_27a)))) (= (= (_let_4 (c_2Efcp_2EBIT1A_2E1 _let_3)) (_let_4 (c_2Efcp_2EBIT1A_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((V2a_2E0 u) (V3a_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3a_27_2E0))) (let ((_let_3 (_let_1 V2a_2E0))) (let ((_let_4 (s (tyop_2Efcp_2Ebit1 A_27a)))) (= (= (_let_4 (c_2Efcp_2EBIT1B_2E1 _let_3)) (_let_4 (c_2Efcp_2EBIT1B_2E1 _let_2))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (V0opt_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0opt_2E0))) (= (= (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_2)))) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F1_2E0 u) (F9_2E0 u) (F8_2E0 u) (F11_2E0 u) (F10_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V20x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F7_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V20x_2E0)))) (forall ((V21y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V20x_2E0)))) ((s A_27a) V21y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V15x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V16y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V15x_2E0)))) ((s A_27a) V16y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F5_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V15x_2E0))))))))) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F3_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V10x_2E0)))) (forall ((V11y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V10x_2E0)))) ((s A_27a) V11y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1P_2E0)))) ((s A_27c) V5x_2E0)))) (forall ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V1P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0))))))))))) (=> (forall ((V1P_2E0 u) (V7y_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V9x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F9_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V2y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((s A_27c) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F8_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V17y_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 ((s A_27c) V19x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F11_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V12y_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 ((s A_27c) V14x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F10_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0i_2E0 u) (V17y_2E0 u) (V18xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F6_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V18xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V12y_2E0 u) (V13xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F4_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V13xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V7y_2E0 u) (V8xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F2_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V8xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0i_2E0 u) (V2y_2E0 u) (V3xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V0i_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_7 (_let_2 _let_6))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V3xxx)))) (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_3) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 ((s (_let_1 A_27c)) V0i_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (and (=> (forall ((V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F8_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F1_2E0)) _let_4)))))) (=> (forall ((V12y_2E0 u)) (let ((_let_1 ((s A_27a) V12y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F4_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F10_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F5_2E0)) _let_4)))))) (=> (forall ((V17y_2E0 u)) (let ((_let_1 ((s A_27a) V17y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F6_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F11_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F7_2E0)) _let_4)))))) (=> (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_9 (_let_2 _let_8))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F2_2E0)) ((s _let_7) V0i_2E0)))) _let_1))) ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F9_2E0)) ((s _let_4) V1P_2E0)))) _let_1))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_8) (_let_7 ((app_2E2 (_let_6 F3_2E0)) _let_4)))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F13_2E0 u) (F11_2E0 u) (F1_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F12_2E0 u) (F10_2E0 u) (F0_2E0 u) (F9_2E0 u) (F8_2E0 u)) (=> (forall ((V2P_2E0 u) (V17x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F7_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V17x_2E0)))) (exists ((V18y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V17x_2E0)))) ((s A_27a) V18y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V13x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F5_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V13x_2E0)))) (exists ((V14y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V13x_2E0)))) ((s A_27a) V14y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V9x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V10y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V9x_2E0)))) ((s A_27a) V10y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F3_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V9x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V23x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (exists ((V24y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V23x_2E0)))) ((s A_27a) V24y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F13_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V23x_2E0))))))))) (=> (forall ((V2P_2E0 u) (V27x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F11_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V27x_2E0)))) (exists ((V28y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V27x_2E0)))) ((s A_27a) V28y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V2P_2E0)))) ((s A_27c) V5x_2E0)))) (exists ((V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_1)) V2P_2E0)) ((s A_27c) V5x_2E0)))) ((s A_27a) V6y_2E0))))))))))) (=> (forall ((V2P_2E0 u) (V15y_2E0 u) (V16x_2E0 u)) (let ((_let_1 ((s A_27a) V15y_2E0))) (let ((_let_2 ((s A_27c) V16x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F6_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V11y_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27a) V11y_2E0))) (let ((_let_2 ((s A_27c) V12x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F4_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V7y_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V7y_2E0))) (let ((_let_2 ((s A_27c) V8x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V19y_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27a) V19y_2E0))) (let ((_let_2 ((s A_27c) V21x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F12_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V25y_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27a) V25y_2E0))) (let ((_let_2 ((s A_27c) V26x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F10_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V2P_2E0 u) (V3y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V3y_2E0))) (let ((_let_2 ((s A_27c) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0iK_2E0 u) (V22xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V0iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) F9_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V22xxx)))) _let_2))))) (=> (forall ((V0iK_2E0 u) (V20xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V0iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) F8_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V20xxx)))) _let_2))))) (forall ((V0iK_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V2P_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_2) _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (and (=> (forall ((V7y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F2_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V7y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F3_2E0)) _let_3)))))) (=> (forall ((V19y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F8_2E0)) ((s A_27c) V0iK_2E0)))) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F12_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V19y_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F9_2E0)) ((s A_27c) V0iK_2E0)))) (_let_6 ((app_2E2 (_let_5 F13_2E0)) _let_3)))))) (=> (forall ((V25y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F10_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V25y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F11_2E0)) _let_3)))))) (=> (forall ((V15y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F6_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V15y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F7_2E0)) _let_3)))))) (=> (forall ((V11y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F4_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V11y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F5_2E0)) _let_3)))))) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V2P_2E0)))) ((s A_27a) V3y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F1_2E0)) _let_3)))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_5)))) (let ((_let_7 (mono_2Ec_2Earithmetic_2E_3E_3D _let_3))) (let ((_let_8 ((mono_2Ec_2Earithmetic_2E_2B _let_6) V0x))) (let ((_let_9 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_10 (_let_9 _let_6))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_12 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_11)))) (let ((_let_13 ((mono_2Ec_2Earithmetic_2E_2B _let_12) V0x))) (let ((_let_14 (_let_9 _let_12))) (let ((_let_15 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_4)))) (let ((_let_16 (mono_2Ec_2Earithmetic_2E_3E _let_3))) (let ((_let_17 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_11)))) (let ((_let_18 ((mono_2Ec_2Earithmetic_2E_2B _let_17) V0x))) (let ((_let_19 (_let_9 _let_17))) (let ((_let_20 ((mono_2Ec_2Earithmetic_2E_2B _let_15) V0x))) (let ((_let_21 (_let_9 _let_15))) (let ((_let_22 (mono_2Ec_2Earithmetic_2ENUMERAL _let_5))) (let ((_let_23 (_let_9 _let_22))) (let ((_let_24 ((mono_2Ec_2Earithmetic_2E_2B _let_22) V0x))) (let ((_let_25 (mono_2Ec_2Earithmetic_2ENUMERAL _let_11))) (let ((_let_26 ((mono_2Ec_2Earithmetic_2E_2B _let_25) V0x))) (let ((_let_27 (_let_9 _let_25))) (let ((_let_28 (mono_2Ec_2Earithmetic_2ENUMERAL _let_4))) (let ((_let_29 (_let_9 _let_28))) (let ((_let_30 ((mono_2Ec_2Earithmetic_2E_2B _let_28) V0x))) (let ((_let_31 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (and (= (= _let_3 _let_6) (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u) (V7e6_2E0 u) (V8e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (exists ((V9e1_2E0 u) (V10e2_2E0 u) (V11e3_2E0 u) (V12e4_2E0 u) (V13e5_2E0 u) (V14e6_2E0 u) (V15e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) (= _let_6 _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_12) _let_3) (exists ((V16l_27_2E0 u) (V17e1_2E0 u) (V18e2_2E0 u) (V19e3_2E0 u) (V20e4_2E0 u) (V21e5_2E0 u) (V22e6_2E0 u) (V23e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e7_2E0)) (_let_1 V16l_27_2E0)))))))))))))))))))) (= (exists ((V24l_27_2E0 u) (V25e1_2E0 u) (V26e2_2E0 u) (V27e3_2E0 u) (V28e4_2E0 u) (V29e5_2E0 u) (V30e6_2E0 u) (V31e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V30e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e7_2E0)) (_let_1 V24l_27_2E0))))))))))))))))))) (_let_16 _let_12)) (= (exists ((V72l_27_2E0 u) (V73e1_2E0 u) (V74e2_2E0 u) (V75e3_2E0 u) (V76e4_2E0 u) (V77e5_2E0 u) (V78e6_2E0 u) (V79e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V72l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V73e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V74e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V75e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V76e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V77e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V78e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V79e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_10)) (= (exists ((V80l_27_2E0 u) (V81e1_2E0 u) (V82e2_2E0 u) (V83e3_2E0 u) (V84e4_2E0 u) (V85e5_2E0 u) (V86e6_2E0 u) (V87e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V80l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V81e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V82e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V83e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V84e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V85e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V86e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V87e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_8)) (= (= _let_3 _let_10) (exists ((V96l_27_2E0 u) (V97e1_2E0 u) (V98e2_2E0 u) (V99e3_2E0 u) (V100e4_2E0 u) (V101e5_2E0 u) (V102e6_2E0 u) (V103e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V96l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V97e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V98e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V99e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V100e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V101e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V102e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V103e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_12) (exists ((V112e1_2E0 u) (V113e2_2E0 u) (V114e3_2E0 u) (V115e4_2E0 u) (V116e5_2E0 u) (V117e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V112e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V113e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V114e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V115e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V116e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V117e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= (= _let_12 _let_3) (exists ((V118e1_2E0 u) (V119e2_2E0 u) (V120e3_2E0 u) (V121e4_2E0 u) (V122e5_2E0 u) (V123e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V118e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V119e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V120e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V121e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V122e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V123e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_17) _let_3) (exists ((V124l_27_2E0 u) (V125e1_2E0 u) (V126e2_2E0 u) (V127e3_2E0 u) (V128e4_2E0 u) (V129e5_2E0 u) (V130e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V125e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V126e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V127e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V128e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V129e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V130e6_2E0)) (_let_1 V124l_27_2E0)))))))))))))))))) (= (_let_16 _let_17) (exists ((V131l_27_2E0 u) (V132e1_2E0 u) (V133e2_2E0 u) (V134e3_2E0 u) (V135e4_2E0 u) (V136e5_2E0 u) (V137e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V132e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V133e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V134e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V135e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V136e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V137e6_2E0)) (_let_1 V131l_27_2E0)))))))))))))))))) (= (exists ((V138l_27_2E0 u) (V139e1_2E0 u) (V140e2_2E0 u) (V141e3_2E0 u) (V142e4_2E0 u) (V143e5_2E0 u) (V144e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V139e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V140e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V141e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V142e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V143e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V144e6_2E0)) (_let_1 V138l_27_2E0))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_3)) (= (exists ((V159l_27_2E0 u) (V160e1_2E0 u) (V161e2_2E0 u) (V162e3_2E0 u) (V163e4_2E0 u) (V164e5_2E0 u) (V165e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V159l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V160e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V161e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V162e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V163e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V164e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V165e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_13)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_14) _let_3) (exists ((V166l_27_2E0 u) (V167e1_2E0 u) (V168e2_2E0 u) (V169e3_2E0 u) (V170e4_2E0 u) (V171e5_2E0 u) (V172e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V166l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V167e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V168e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V169e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V170e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V171e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V172e6_2E0)) _let_2))))))))))))))))))) (= (_let_7 _let_14) (exists ((V173l_27_2E0 u) (V174e1_2E0 u) (V175e2_2E0 u) (V176e3_2E0 u) (V177e4_2E0 u) (V178e5_2E0 u) (V179e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V173l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V174e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V175e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V176e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V177e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V178e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V179e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V180l_27_2E0 u) (V181e1_2E0 u) (V182e2_2E0 u) (V183e3_2E0 u) (V184e4_2E0 u) (V185e5_2E0 u) (V186e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V180l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V181e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V182e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V183e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V184e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V185e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V186e6_2E0)) _let_2))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_13)) (= (= _let_13 _let_3) (exists ((V187l_27_2E0 u) (V188e1_2E0 u) (V189e2_2E0 u) (V190e3_2E0 u) (V191e4_2E0 u) (V192e5_2E0 u) (V193e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V187l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V188e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V189e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V190e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V191e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V192e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V193e6_2E0)) _let_2))))))))))))))))))) (= (= _let_3 _let_14) (exists ((V194l_27_2E0 u) (V195e1_2E0 u) (V196e2_2E0 u) (V197e3_2E0 u) (V198e4_2E0 u) (V199e5_2E0 u) (V200e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V194l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V195e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V196e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V197e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V198e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V199e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V200e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V208e1_2E0 u) (V209e2_2E0 u) (V210e3_2E0 u) (V211e4_2E0 u) (V212e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V208e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V209e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V210e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V211e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V212e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) (= _let_3 _let_17)) (= (exists ((V213e1_2E0 u) (V214e2_2E0 u) (V215e3_2E0 u) (V216e4_2E0 u) (V217e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V213e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V214e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V215e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V216e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V217e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) (= _let_17 _let_3)) (= (exists ((V248l_27_2E0 u) (V249e1_2E0 u) (V250e2_2E0 u) (V251e3_2E0 u) (V252e4_2E0 u) (V253e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V248l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V249e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V250e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V251e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V252e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V253e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_18)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_19) _let_3) (exists ((V254l_27_2E0 u) (V255e1_2E0 u) (V256e2_2E0 u) (V257e3_2E0 u) (V258e4_2E0 u) (V259e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V254l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V255e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V256e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V257e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V258e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V259e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V272l_27_2E0 u) (V273e1_2E0 u) (V274e2_2E0 u) (V275e3_2E0 u) (V276e4_2E0 u) (V277e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V272l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V273e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V274e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V275e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V276e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V277e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_18 _let_3)) (= (= _let_3 _let_15) (exists ((V290e1_2E0 u) (V291e2_2E0 u) (V292e3_2E0 u) (V293e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V290e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V291e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V292e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V293e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= (= _let_15 _let_3) (exists ((V294e1_2E0 u) (V295e2_2E0 u) (V296e3_2E0 u) (V297e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V294e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V295e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V296e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V297e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_22) _let_3) (exists ((V298l_27_2E0 u) (V299e1_2E0 u) (V300e2_2E0 u) (V301e3_2E0 u) (V302e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V299e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V300e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V301e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V302e4_2E0)) (_let_1 V298l_27_2E0)))))))))))))) (= (_let_16 _let_22) (exists ((V303l_27_2E0 u) (V304e1_2E0 u) (V305e2_2E0 u) (V306e3_2E0 u) (V307e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V304e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V305e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V306e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V307e4_2E0)) (_let_1 V303l_27_2E0)))))))))))))) (= (_let_7 _let_20) (exists ((V323l_27_2E0 u) (V324e1_2E0 u) (V325e2_2E0 u) (V326e3_2E0 u) (V327e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V323l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V324e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V325e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V326e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V327e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V338l_27_2E0 u) (V339e1_2E0 u) (V340e2_2E0 u) (V341e3_2E0 u) (V342e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V338l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V339e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V340e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V341e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V342e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_20)) (= (exists ((V343l_27_2E0 u) (V344e1_2E0 u) (V345e2_2E0 u) (V346e3_2E0 u) (V347e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V343l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V344e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V345e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V346e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V347e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_20 _let_3)) (= (= _let_3 _let_22) (exists ((V358e1_2E0 u) (V359e2_2E0 u) (V360e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V358e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V359e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V360e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (= _let_22 _let_3) (exists ((V361e1_2E0 u) (V362e2_2E0 u) (V363e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V361e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V362e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V363e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (exists ((V364l_27_2E0 u) (V365e1_2E0 u) (V366e2_2E0 u) (V367e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V365e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V366e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V367e3_2E0)) (_let_1 V364l_27_2E0))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_25) _let_3)) (= (exists ((V368l_27_2E0 u) (V369e1_2E0 u) (V370e2_2E0 u) (V371e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V369e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V370e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V371e3_2E0)) (_let_1 V368l_27_2E0))))))))))) (_let_16 _let_25)) (= (exists ((V376l_27_2E0 u) (V377e1_2E0 u) (V378e2_2E0 u) (V379e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V377e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V378e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V379e3_2E0)) (_let_1 V376l_27_2E0))))))))))) (_let_7 _let_22)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_24) _let_3) (exists ((V380l_27_2E0 u) (V381e1_2E0 u) (V382e2_2E0 u) (V383e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V380l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V381e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V382e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V383e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V384l_27_2E0 u) (V385e1_2E0 u) (V386e2_2E0 u) (V387e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V384l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V385e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V386e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V387e3_2E0)) _let_2)))))))))))) (_let_7 _let_24)) (= (exists ((V400l_27_2E0 u) (V401e1_2E0 u) (V402e2_2E0 u) (V403e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V400l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V401e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V402e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V403e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_24 _let_3)) (= (exists ((V404l_27_2E0 u) (V405e1_2E0 u) (V406e2_2E0 u) (V407e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V404l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V405e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V406e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V407e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_23)) (= (= _let_23 _let_3) (exists ((V408l_27_2E0 u) (V409e1_2E0 u) (V410e2_2E0 u) (V411e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V408l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V409e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V410e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V411e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V416l_27_2E0 u) (V417e1_2E0 u) (V418e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V417e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V418e2_2E0)) (_let_1 V416l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_28) _let_3)) (= (exists ((V419l_27_2E0 u) (V420e1_2E0 u) (V421e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V420e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V421e2_2E0)) (_let_1 V419l_27_2E0))))))))) (_let_16 _let_28)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_27) _let_3) (exists ((V434l_27_2E0 u) (V435e1_2E0 u) (V436e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V434l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V435e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V436e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V437l_27_2E0 u) (V438e1_2E0 u) (V439e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V437l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V438e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V439e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_27)) (= (= _let_3 _let_26) (exists ((V440l_27_2E0 u) (V441e1_2E0 u) (V442e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V440l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V441e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V442e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_16 mono_2Ec_2Enum_2E0) (exists ((V456l_27_2E0 u) (V457e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V457e1_2E0)) (_let_1 V456l_27_2E0))))))) (= (exists ((V460l_27_2E0 u) (V461e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V461e1_2E0)) (_let_1 V460l_27_2E0)))))) (_let_7 _let_28)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_30) _let_3) (exists ((V462l_27_2E0 u) (V463e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V462l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V463e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V464l_27_2E0 u) (V465e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V464l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V465e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_7 _let_30)) (= (= _let_3 mono_2Ec_2Enum_2E0) _let_31) (= ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3) _let_31) (= _let_31 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_3E _let_28) _let_3) _let_31) (= _let_31 ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_28)) (= _let_31 (= mono_2Ec_2Enum_2E0 _let_3)) (= (exists ((V476l_27_2E0 u) (V477e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V476l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V477e1_2E0)) _let_2))))))) (= _let_29 _let_3)) (= (exists ((V474l_27_2E0 u) (V475e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V474l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V475e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_3 _let_29)) (= (= _let_30 _let_3) (exists ((V472l_27_2E0 u) (V473e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V472l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V473e1_2E0)) _let_2)))))))) (= (exists ((V470l_27_2E0 u) (V471e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V470l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V471e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_3 _let_30)) (= (exists ((V468l_27_2E0 u) (V469e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V468l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V469e1_2E0)) _let_2))))))) (_let_7 _let_29)) (= (exists ((V466l_27_2E0 u) (V467e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V466l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V467e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_29) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_28) _let_3) (exists ((V458l_27_2E0 u) (V459e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V459e1_2E0)) (_let_1 V458l_27_2E0))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_3) (exists ((V454l_27_2E0 u) (V455e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V455e1_2E0)) (_let_1 V454l_27_2E0))))))) (= (exists ((V453e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V453e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_28 _let_3)) (= (exists ((V452e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V452e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_3 _let_28)) (= (= _let_27 _let_3) (exists ((V449l_27_2E0 u) (V450e1_2E0 u) (V451e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V449l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V450e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V451e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_27) (exists ((V446l_27_2E0 u) (V447e1_2E0 u) (V448e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V446l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V447e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V448e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V443l_27_2E0 u) (V444e1_2E0 u) (V445e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V443l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V444e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V445e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_26 _let_3)) (= (_let_7 _let_26) (exists ((V431l_27_2E0 u) (V432e1_2E0 u) (V433e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V431l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V432e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V433e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V428l_27_2E0 u) (V429e1_2E0 u) (V430e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V428l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V429e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V430e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_26) _let_3)) (= (_let_7 _let_25) (exists ((V425l_27_2E0 u) (V426e1_2E0 u) (V427e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V426e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V427e2_2E0)) (_let_1 V425l_27_2E0)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_25) _let_3) (exists ((V422l_27_2E0 u) (V423e1_2E0 u) (V424e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V423e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V424e2_2E0)) (_let_1 V422l_27_2E0)))))))))) (= (exists ((V414e1_2E0 u) (V415e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V414e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V415e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_25 _let_3)) (= (exists ((V412e1_2E0 u) (V413e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V412e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V413e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_3 _let_25)) (= (exists ((V396l_27_2E0 u) (V397e1_2E0 u) (V398e2_2E0 u) (V399e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V396l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V397e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V398e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V399e3_2E0)) _let_2)))))))))))) (= _let_3 _let_24)) (= (exists ((V392l_27_2E0 u) (V393e1_2E0 u) (V394e2_2E0 u) (V395e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V392l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V393e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V394e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V395e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_23)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_23) _let_3) (exists ((V388l_27_2E0 u) (V389e1_2E0 u) (V390e2_2E0 u) (V391e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V388l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V389e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V390e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V391e3_2E0)) _let_2))))))))))))) (= (exists ((V372l_27_2E0 u) (V373e1_2E0 u) (V374e2_2E0 u) (V375e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V373e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V374e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V375e3_2E0)) (_let_1 V372l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_3)) (= (= _let_21 _let_3) (exists ((V353l_27_2E0 u) (V354e1_2E0 u) (V355e2_2E0 u) (V356e3_2E0 u) (V357e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V353l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V354e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V355e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V356e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V357e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_21) (exists ((V348l_27_2E0 u) (V349e1_2E0 u) (V350e2_2E0 u) (V351e3_2E0 u) (V352e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V348l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V349e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V350e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V351e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V352e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_7 _let_21) (exists ((V333l_27_2E0 u) (V334e1_2E0 u) (V335e2_2E0 u) (V336e3_2E0 u) (V337e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V333l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V334e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V335e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V336e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V337e4_2E0)) _let_2))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_21) _let_3) (exists ((V328l_27_2E0 u) (V329e1_2E0 u) (V330e2_2E0 u) (V331e3_2E0 u) (V332e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V328l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V329e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V330e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V331e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V332e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_3) (exists ((V318l_27_2E0 u) (V319e1_2E0 u) (V320e2_2E0 u) (V321e3_2E0 u) (V322e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V318l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V319e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V320e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V321e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V322e4_2E0)) _let_2))))))))))))))) (= (_let_7 _let_15) (exists ((V313l_27_2E0 u) (V314e1_2E0 u) (V315e2_2E0 u) (V316e3_2E0 u) (V317e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V314e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V315e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V316e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V317e4_2E0)) (_let_1 V313l_27_2E0)))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_3) (exists ((V308l_27_2E0 u) (V309e1_2E0 u) (V310e2_2E0 u) (V311e3_2E0 u) (V312e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V309e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V310e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V311e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V312e4_2E0)) (_let_1 V308l_27_2E0)))))))))))))) (= (exists ((V284l_27_2E0 u) (V285e1_2E0 u) (V286e2_2E0 u) (V287e3_2E0 u) (V288e4_2E0 u) (V289e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V284l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V285e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V286e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V287e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V288e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V289e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_19 _let_3)) (= (exists ((V278l_27_2E0 u) (V279e1_2E0 u) (V280e2_2E0 u) (V281e3_2E0 u) (V282e4_2E0 u) (V283e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V278l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V279e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V280e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V281e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V282e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V283e5_2E0)) _let_2)))))))))))))))) (= _let_3 _let_19)) (= (= _let_3 _let_18) (exists ((V266l_27_2E0 u) (V267e1_2E0 u) (V268e2_2E0 u) (V269e3_2E0 u) (V270e4_2E0 u) (V271e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V266l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V267e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V268e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V269e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V270e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V271e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_7 _let_19) (exists ((V260l_27_2E0 u) (V261e1_2E0 u) (V262e2_2E0 u) (V263e3_2E0 u) (V264e4_2E0 u) (V265e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V260l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V261e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V262e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V263e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V264e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V265e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V242l_27_2E0 u) (V243e1_2E0 u) (V244e2_2E0 u) (V245e3_2E0 u) (V246e4_2E0 u) (V247e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V242l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V243e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V244e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V245e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V246e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V247e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_18) _let_3)) (= (exists ((V236l_27_2E0 u) (V237e1_2E0 u) (V238e2_2E0 u) (V239e3_2E0 u) (V240e4_2E0 u) (V241e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V237e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V238e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V239e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V240e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V241e5_2E0)) (_let_1 V236l_27_2E0))))))))))))))) (_let_7 _let_17)) (= (exists ((V230l_27_2E0 u) (V231e1_2E0 u) (V232e2_2E0 u) (V233e3_2E0 u) (V234e4_2E0 u) (V235e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V231e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V232e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V233e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V234e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V235e5_2E0)) (_let_1 V230l_27_2E0))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_3)) (= (_let_16 _let_15) (exists ((V224l_27_2E0 u) (V225e1_2E0 u) (V226e2_2E0 u) (V227e3_2E0 u) (V228e4_2E0 u) (V229e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V225e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V226e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V227e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V228e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V229e5_2E0)) (_let_1 V224l_27_2E0)))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_15) _let_3) (exists ((V218l_27_2E0 u) (V219e1_2E0 u) (V220e2_2E0 u) (V221e3_2E0 u) (V222e4_2E0 u) (V223e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V219e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V220e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V221e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V222e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V223e5_2E0)) (_let_1 V218l_27_2E0)))))))))))))))) (= (exists ((V201l_27_2E0 u) (V202e1_2E0 u) (V203e2_2E0 u) (V204e3_2E0 u) (V205e4_2E0 u) (V206e5_2E0 u) (V207e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V201l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V202e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V203e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V204e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V205e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V206e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V207e6_2E0)) _let_2)))))))))))))))))) (= _let_14 _let_3)) (= (exists ((V152l_27_2E0 u) (V153e1_2E0 u) (V154e2_2E0 u) (V155e3_2E0 u) (V156e4_2E0 u) (V157e5_2E0 u) (V158e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V152l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V153e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V154e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V155e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V156e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V157e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V158e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_3)) (= (exists ((V145l_27_2E0 u) (V146e1_2E0 u) (V147e2_2E0 u) (V148e3_2E0 u) (V149e4_2E0 u) (V150e5_2E0 u) (V151e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V146e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V147e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V148e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V149e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V150e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V151e6_2E0)) (_let_1 V145l_27_2E0))))))))))))))))) (_let_7 _let_12)) (= (= _let_10 _let_3) (exists ((V104l_27_2E0 u) (V105e1_2E0 u) (V106e2_2E0 u) (V107e3_2E0 u) (V108e4_2E0 u) (V109e5_2E0 u) (V110e6_2E0 u) (V111e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V104l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V105e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V106e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V107e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V108e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V109e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V110e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V111e7_2E0)) _let_2))))))))))))))))))))) (= (= _let_8 _let_3) (exists ((V88l_27_2E0 u) (V89e1_2E0 u) (V90e2_2E0 u) (V91e3_2E0 u) (V92e4_2E0 u) (V93e5_2E0 u) (V94e6_2E0 u) (V95e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V88l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V89e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V90e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V91e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V92e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V93e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V94e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V95e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V64l_27_2E0 u) (V65e1_2E0 u) (V66e2_2E0 u) (V67e3_2E0 u) (V68e4_2E0 u) (V69e5_2E0 u) (V70e6_2E0 u) (V71e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V64l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V65e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V66e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V67e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V68e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V69e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V70e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V71e7_2E0)) _let_2)))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_10) _let_3)) (= (exists ((V56l_27_2E0 u) (V57e1_2E0 u) (V58e2_2E0 u) (V59e3_2E0 u) (V60e4_2E0 u) (V61e5_2E0 u) (V62e6_2E0 u) (V63e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V56l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V57e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V58e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V59e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V60e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V61e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V62e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V63e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_7 _let_8)) (= (exists ((V48l_27_2E0 u) (V49e1_2E0 u) (V50e2_2E0 u) (V51e3_2E0 u) (V52e4_2E0 u) (V53e5_2E0 u) (V54e6_2E0 u) (V55e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V48l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V49e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V50e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V51e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V52e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V53e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V54e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V55e7_2E0)) _let_2)))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_3)) (= (exists ((V40l_27_2E0 u) (V41e1_2E0 u) (V42e2_2E0 u) (V43e3_2E0 u) (V44e4_2E0 u) (V45e5_2E0 u) (V46e6_2E0 u) (V47e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V41e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V42e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V43e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V44e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V45e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V46e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V47e7_2E0)) (_let_1 V40l_27_2E0))))))))))))))))))) (_let_7 _let_6)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_3) (exists ((V32l_27_2E0 u) (V33e1_2E0 u) (V34e2_2E0 u) (V35e3_2E0 u) (V36e4_2E0 u) (V37e5_2E0 u) (V38e6_2E0 u) (V39e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V33e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V36e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V37e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V38e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V39e7_2E0)) (_let_1 V32l_27_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))) (= (exists ((V2v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0))))) (exists ((V3fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))))) (forall ((A_27a d) (A_27b d) (F8_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F10_2E0 u) (F0_2E0 u) (F9_2E0 u) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F11_2E0 u) (F1_2E0 u)) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F8_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V1P_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F6_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V1P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F10_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V1P_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F9_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F5_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F11_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_6 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_5))) (let ((_let_9 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_5))) (let ((_let_10 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_5))) (let ((_let_11 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_5))) (let ((_let_12 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_5))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((app_2E2 (_let_4 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 (_let_2 ((app_2E2 (_let_4 F1_2E0)) _let_3)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_2 ((app_2E2 (_let_4 F6_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_2 ((app_2E2 (_let_4 F7_2E0)) _let_3)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 (_let_2 ((app_2E2 (_let_4 F8_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_12 (_let_2 ((app_2E2 (_let_4 F9_2E0)) _let_3)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_12 (_let_2 ((app_2E2 (_let_4 F10_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 (_let_2 ((app_2E2 (_let_4 F11_2E0)) _let_3)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_2 ((app_2E2 (_let_4 F4_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_2 ((app_2E2 (_let_4 F5_2E0)) _let_3)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 (_let_2 ((app_2E2 (_let_4 F2_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((app_2E2 (_let_4 F3_2E0)) _let_3))))))))))))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2EquantHeuristics_2EIS__REMOVABLE__QUANT__FUN_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2EquantHeuristics_2EIS__REMOVABLE__QUANT__FUN_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0P_2E0 u)) (= (not (forall ((V2x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3P_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V4f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_3 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool))))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V3P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2))))))))))))))))) (forall ((A_27a d) (V0a_2E0 u) (V1P_2E0 u)) (= (=> (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (=> (not (= _let_2 (_let_1 V0a_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V0a_2E0))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0p Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0p))))) ((s A_27b) V2x_2E0)))) V0p)))) (forall ((V0p Bool) (V1i_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1i_2E0)) ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0p))))))) mono_2Ec_2Ebool_2ET)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V2xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V2xxx)))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 ((s A_27a) V0i_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) _let_3))) _let_2)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (F5_2E0 u) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1i_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F5_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (=> (forall ((V1i_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F4_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (=> (forall ((V1i_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F3_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (=> (forall ((V1i_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F2_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (=> (forall ((V1i_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F1_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (=> (forall ((V1i_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1i_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))) (forall ((V0vt_2E0 u) (V1i_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0vt_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_3 ((s _let_2) V1i_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_2) _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 (_let_6 ((app_2E2 (_let_5 F5_2E0)) _let_3))) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 (_let_6 ((app_2E2 (_let_5 F4_2E0)) _let_3))) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 (_let_6 ((app_2E2 (_let_5 F3_2E0)) _let_3))) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_6 ((app_2E2 (_let_5 F2_2E0)) _let_3))) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 (_let_6 ((app_2E2 (_let_5 F1_2E0)) _let_3))) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 (_let_6 ((app_2E2 (_let_5 F0_2E0)) _let_3))) _let_1)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (forall ((V2x_2E0 u)) (exists ((V3fv_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V2x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s A_27b) V3fv_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (forall ((V2fv_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V2fv_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= (=> V2P1 V3P2) ((F0 V2P1) V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V3P2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= (= mono_2Ec_2Enum_2E0 _let_3) _let_4) (= _let_4 ((mono_2Ec_2Earithmetic_2E_3E _let_5) _let_3)) (= _let_4 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0)) (= _let_4 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3)) (= _let_4 ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_5)) (= _let_4 (= _let_3 mono_2Ec_2Enum_2E0))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 (_let_6 _let_1)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDR_2E0)) _let_8))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (forall ((V2v_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0))))) (exists ((V3fv_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V2v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s A_27a) V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1P_2E0))) (=> (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (= (_let_1 (c_2Eoption_2Esome_2E1 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_5) _let_2))) (_let_1 (c_2Eoption_2ESOME_2E1 _let_2))) (_let_1 c_2Eoption_2ENONE_2E0))))))))))))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool))) ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Enum_2Enum V0p) mono_2Ec_2EEncode_2Eencode__num)) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))) (forall ((V2v_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0)))) (exists ((V3fv_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V2v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_2))) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((A_27a d) (V0i_2E0 u) (V1P_2E0 u)) (=> (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V0i_2E0)))) (forall ((V3v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3v_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISR_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0)))))) (and (= _let_1 (forall ((V2l_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (not (= (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V2l_2E0))) (_let_1 V0x_2E0)))))) (= _let_1 (forall ((V1l_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (not (= (_let_1 V0x_2E0) (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V1l_2E0))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V1ll_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ellist_2Eexists_2E2 _let_4) _let_2)))))))))))) (forall ((V0P_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (c_2Ellist_2ELFILTER_2E2 _let_5))) (let ((_let_7 (_let_2 (_let_6 (_let_2 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Ellist_2ELTL_2E1 _let_3)))))))) (let ((_let_8 ((s A_27a) (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Ellist_2ELHD_2E1 _let_3)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (_let_2 (_let_6 _let_3)) (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_10)) F0_2E0)) _let_5))) _let_3))) (_let_2 c_2Ellist_2ELNIL_2E0)) (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_9 ((app_2E2 _let_5) _let_8))) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_8) _let_7))) _let_7)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V5r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V0v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V5r_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F0_2E0)) _let_3))) _let_6))) (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2p Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_5)))) (let ((_let_7 (_let_6 V1rows_2E0))) (let ((_let_8 ((s A_27a) V0v_2E0))) (let ((_let_9 (s _let_3))) (let ((_let_10 (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos))) (let ((_let_11 (s tyop_2Enum_2Enum))) (let ((_let_12 (_let_11 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V4i) _let_10))))) (let ((_let_13 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (=> (and ((mono_2Ec_2Earithmetic_2E_3E_3D V4i) _let_10) ((mono_2Ec_2Eprim__rec_2E_3C V4i) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_11 (c_2Elist_2ELENGTH_2E1 _let_7)))) _let_10))) (= (=> (and V2p (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Elist_2EEVERY_2E2 ((s _let_13) ((app_2E2 ((s (_let_4 _let_13)) F0_2E0)) _let_8))) (_let_6 ((c_2Elist_2ETAKE_2E2 _let_12) _let_7)))))) (= (_let_9 ((app_2E2 ((s _let_5) ((c_2Elist_2EEL_2E2 _let_12) _let_7))) _let_8)) (_let_9 c_2Eoption_2ENONE_2E0))) ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool V4i) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 _let_8) _let_7) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V2p))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))))))))))))))))))))))) (forall ((V0x Bool) (V1t1 Bool) (V2t2 Bool)) (=> (=> V1t1 V2t2) (=> (and V1t1 V0x) (and V2t2 V0x)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s A_27b) V2x_2E0))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s A_27a) V0i_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) F0_2E0)) _let_1))) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 _let_3))) (and (forall ((V3v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3v_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))) (= _let_2 (_let_1 V0i_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_3) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x Bool) (V2l_27_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1x))))) ((s A_27a) V2l_27_2E0)))) mono_2Ec_2Ebool_2EF)))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2ENULL_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) F0_2E0)) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (= (_let_322 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Enum_2Enum)) (_let_322 c_2EDecode_2Ewf__decoder_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__UNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2D V1n))) (let ((_let_3 (not (= V1n mono_2Ec_2Enum_2E0)))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EEVEN V1n))) (=> (and (=> (and _let_4 _let_3) (V0P ((mono_2Ec_2Earithmetic_2EDIV (_let_2 _let_1)) _let_1))) (=> (and (not _let_4) _let_3) (V0P ((mono_2Ec_2Earithmetic_2EDIV (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_1)))) (V0P V1n))))))) (forall ((V2v mono_2Etyop_2Enum_2Enum)) (V0P V2v)))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1p2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1p2_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (_let_3 V0p_2E0))) (= (= (_let_1 (c_2Epair_2ESND_2E1 _let_4)) _let_2) (= _let_4 (_let_3 ((c_2Epair_2E_2C_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_4))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0p (-> mono_2Etyop_2Eone_2Eone Bool)) (V1x mono_2Etyop_2Eone_2Eone)) (=> (V0p V1x) (= ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Eone_2Eone (mono_2Ec_2EDecode_2Edecode__unit V0p)) V1x) (mono_2Ec_2EEncode_2Eencode__unit V1x)))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_1)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l_2E0))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))))) (let ((_let_6 (mono_2Ec_2Earithmetic_2E_3E _let_5))) (let ((_let_7 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_8 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_7)))) (let ((_let_9 (mono_2Ec_2Earithmetic_2E_3E_3D _let_5))) (let ((_let_10 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_11 (_let_10 _let_8))) (let ((_let_12 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_1)))) (let ((_let_13 ((mono_2Ec_2Earithmetic_2E_2B _let_2) V0x))) (let ((_let_14 (_let_10 _let_2))) (let ((_let_15 (mono_2Ec_2Earithmetic_2ENUMERAL _let_7))) (let ((_let_16 ((mono_2Ec_2Earithmetic_2E_2B _let_12) V0x))) (let ((_let_17 (_let_10 _let_12))) (let ((_let_18 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (let ((_let_19 ((mono_2Ec_2Earithmetic_2E_2B _let_15) V0x))) (let ((_let_20 (_let_10 _let_15))) (let ((_let_21 (_let_10 _let_18))) (let ((_let_22 ((mono_2Ec_2Earithmetic_2E_2B _let_18) V0x))) (let ((_let_23 (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (let ((_let_24 ((mono_2Ec_2Earithmetic_2E_2B _let_8) V0x))) (and (= (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) (= _let_5 _let_8)) (= (= _let_8 _let_5) (exists ((V7e1_2E0 u) (V8e2_2E0 u) (V9e3_2E0 u) (V10e4_2E0 u) (V11e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_2) _let_5) (exists ((V12l_27_2E0 u) (V13e1_2E0 u) (V14e2_2E0 u) (V15e3_2E0 u) (V16e4_2E0 u) (V17e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e5_2E0)) (_let_1 V12l_27_2E0)))))))))))))))) (= (exists ((V24l_27_2E0 u) (V25e1_2E0 u) (V26e2_2E0 u) (V27e3_2E0 u) (V28e4_2E0 u) (V29e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e5_2E0)) (_let_1 V24l_27_2E0))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_5)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_24) _let_5) (exists ((V36l_27_2E0 u) (V37e1_2E0 u) (V38e2_2E0 u) (V39e3_2E0 u) (V40e4_2E0 u) (V41e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V36l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V37e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V38e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V39e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V40e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V41e5_2E0)) _let_2))))))))))))))))) (= (exists ((V42l_27_2E0 u) (V43e1_2E0 u) (V44e2_2E0 u) (V45e3_2E0 u) (V46e4_2E0 u) (V47e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V42l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V43e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V44e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V45e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V46e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V47e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_24)) (= (= _let_5 _let_24) (exists ((V60l_27_2E0 u) (V61e1_2E0 u) (V62e2_2E0 u) (V63e3_2E0 u) (V64e4_2E0 u) (V65e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V60l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V61e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V62e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V63e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V64e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V65e5_2E0)) _let_2))))))))))))))))) (= (exists ((V66l_27_2E0 u) (V67e1_2E0 u) (V68e2_2E0 u) (V69e3_2E0 u) (V70e4_2E0 u) (V71e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V66l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V67e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V68e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V69e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V70e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V71e5_2E0)) _let_2)))))))))))))))) (= _let_24 _let_5)) (= (exists ((V88e1_2E0 u) (V89e2_2E0 u) (V90e3_2E0 u) (V91e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V88e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V89e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V90e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V91e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_2 _let_5)) (= (exists ((V102l_27_2E0 u) (V103e1_2E0 u) (V104e2_2E0 u) (V105e3_2E0 u) (V106e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V103e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V104e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V105e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V106e4_2E0)) (_let_1 V102l_27_2E0))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) _let_5)) (= (_let_9 _let_13) (exists ((V117l_27_2E0 u) (V118e1_2E0 u) (V119e2_2E0 u) (V120e3_2E0 u) (V121e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V117l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V118e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V119e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V120e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V121e4_2E0)) _let_2))))))))))))))) (= (_let_9 _let_14) (exists ((V127l_27_2E0 u) (V128e1_2E0 u) (V129e2_2E0 u) (V130e3_2E0 u) (V131e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V127l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V128e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V129e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V130e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V131e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_13 _let_5) (exists ((V137l_27_2E0 u) (V138e1_2E0 u) (V139e2_2E0 u) (V140e3_2E0 u) (V141e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V137l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V138e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V139e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V140e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V141e4_2E0)) _let_2))))))))))))))) (= (= _let_5 _let_14) (exists ((V142l_27_2E0 u) (V143e1_2E0 u) (V144e2_2E0 u) (V145e3_2E0 u) (V146e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V142l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V143e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V144e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V145e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V146e4_2E0)) _let_2))))))))))))))) (= (exists ((V152e1_2E0 u) (V153e2_2E0 u) (V154e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V152e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V153e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V154e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_5 _let_12)) (= (exists ((V166l_27_2E0 u) (V167e1_2E0 u) (V168e2_2E0 u) (V169e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V167e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V168e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V169e3_2E0)) (_let_1 V166l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_5)) (= (= _let_5 _let_16) (exists ((V190l_27_2E0 u) (V191e1_2E0 u) (V192e2_2E0 u) (V193e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V190l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V191e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V192e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V193e3_2E0)) _let_2))))))))))))) (= (= _let_5 _let_17) (exists ((V198l_27_2E0 u) (V199e1_2E0 u) (V200e2_2E0 u) (V201e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V198l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V199e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V200e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V201e3_2E0)) _let_2))))))))))))) (= (exists ((V208e1_2E0 u) (V209e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V208e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V209e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_15 _let_5)) (= (exists ((V216l_27_2E0 u) (V217e1_2E0 u) (V218e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V217e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V218e2_2E0)) (_let_1 V216l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_5)) (= (_let_9 _let_15) (exists ((V219l_27_2E0 u) (V220e1_2E0 u) (V221e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V220e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V221e2_2E0)) (_let_1 V219l_27_2E0)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_19) _let_5) (exists ((V222l_27_2E0 u) (V223e1_2E0 u) (V224e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V222l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V223e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V224e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_9 _let_19) (exists ((V225l_27_2E0 u) (V226e1_2E0 u) (V227e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V225l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V226e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V227e2_2E0)) _let_2))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_5) (exists ((V228l_27_2E0 u) (V229e1_2E0 u) (V230e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V228l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V229e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V230e2_2E0)) _let_2))))))))))) (= (_let_9 _let_20) (exists ((V231l_27_2E0 u) (V232e1_2E0 u) (V233e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V231l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V232e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V233e2_2E0)) _let_2))))))))))) (= (exists ((V240l_27_2E0 u) (V241e1_2E0 u) (V242e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V240l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V241e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V242e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_20)) (= (exists ((V246e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V246e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_5 _let_18)) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_5) (exists ((V248l_27_2E0 u) (V249e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V249e1_2E0)) (_let_1 V248l_27_2E0))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_5) (exists ((V256l_27_2E0 u) (V257e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V256l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V257e1_2E0)) _let_2)))))))) (= (_let_9 _let_22) (exists ((V258l_27_2E0 u) (V259e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V258l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V259e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_21) _let_5) (exists ((V260l_27_2E0 u) (V261e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V260l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V261e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (= _let_22 _let_5) (exists ((V266l_27_2E0 u) (V267e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V266l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V267e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (exists ((V270l_27_2E0 u) (V271e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V270l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V271e1_2E0)) _let_2))))))) (= _let_21 _let_5)) (= _let_23 (= _let_5 mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_5) _let_18) _let_23) (= _let_23 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_5)) (= _let_23 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) mono_2Ec_2Enum_2E0)) (= _let_23 ((mono_2Ec_2Earithmetic_2E_3E _let_18) _let_5)) (= (= mono_2Ec_2Enum_2E0 _let_5) _let_23) (= (exists ((V268l_27_2E0 u) (V269e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V268l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V269e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_5 _let_21)) (= (= _let_5 _let_22) (exists ((V264l_27_2E0 u) (V265e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V264l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V265e1_2E0)) _let_2)))))))) (= (exists ((V262l_27_2E0 u) (V263e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V262l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V263e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_9 _let_21)) (= (exists ((V254l_27_2E0 u) (V255e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V255e1_2E0)) (_let_1 V254l_27_2E0)))))) (_let_9 _let_18)) (= (exists ((V252l_27_2E0 u) (V253e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V253e1_2E0)) (_let_1 V252l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_18) _let_5)) (= (_let_6 mono_2Ec_2Enum_2E0) (exists ((V250l_27_2E0 u) (V251e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V251e1_2E0)) (_let_1 V250l_27_2E0))))))) (= (exists ((V247e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V247e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_18 _let_5)) (= (= _let_20 _let_5) (exists ((V243l_27_2E0 u) (V244e1_2E0 u) (V245e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V243l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V244e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V245e2_2E0)) _let_2))))))))))) (= (exists ((V237l_27_2E0 u) (V238e1_2E0 u) (V239e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V237l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V238e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V239e2_2E0)) _let_2)))))))))) (= _let_19 _let_5)) (= (exists ((V234l_27_2E0 u) (V235e1_2E0 u) (V236e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V234l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V235e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V236e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_19)) (= (exists ((V213l_27_2E0 u) (V214e1_2E0 u) (V215e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V214e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V215e2_2E0)) (_let_1 V213l_27_2E0))))))))) (_let_6 _let_18)) (= (exists ((V210l_27_2E0 u) (V211e1_2E0 u) (V212e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V211e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V212e2_2E0)) (_let_1 V210l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_18) _let_5)) (= (= _let_5 _let_15) (exists ((V206e1_2E0 u) (V207e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V206e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V207e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (= _let_17 _let_5) (exists ((V202l_27_2E0 u) (V203e1_2E0 u) (V204e2_2E0 u) (V205e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V202l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V203e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V204e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V205e3_2E0)) _let_2))))))))))))) (= (= _let_16 _let_5) (exists ((V194l_27_2E0 u) (V195e1_2E0 u) (V196e2_2E0 u) (V197e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V194l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V195e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V196e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V197e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_9 _let_17) (exists ((V186l_27_2E0 u) (V187e1_2E0 u) (V188e2_2E0 u) (V189e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V186l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V187e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V188e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V189e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V182l_27_2E0 u) (V183e1_2E0 u) (V184e2_2E0 u) (V185e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V182l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V185e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_5)) (= (_let_9 _let_16) (exists ((V178l_27_2E0 u) (V179e1_2E0 u) (V180e2_2E0 u) (V181e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V178l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V179e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V180e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V181e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_5) (exists ((V174l_27_2E0 u) (V175e1_2E0 u) (V176e2_2E0 u) (V177e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V174l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V175e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V176e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V177e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V170l_27_2E0 u) (V171e1_2E0 u) (V172e2_2E0 u) (V173e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V171e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V172e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V173e3_2E0)) (_let_1 V170l_27_2E0))))))))))) (_let_9 _let_12)) (= (exists ((V162l_27_2E0 u) (V163e1_2E0 u) (V164e2_2E0 u) (V165e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V163e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V164e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V165e3_2E0)) (_let_1 V162l_27_2E0))))))))))) (_let_6 _let_15)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_15) _let_5) (exists ((V158l_27_2E0 u) (V159e1_2E0 u) (V160e2_2E0 u) (V161e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V159e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V160e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V161e3_2E0)) (_let_1 V158l_27_2E0)))))))))))) (= (= _let_12 _let_5) (exists ((V155e1_2E0 u) (V156e2_2E0 u) (V157e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V155e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V156e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V157e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (= _let_14 _let_5) (exists ((V147l_27_2E0 u) (V148e1_2E0 u) (V149e2_2E0 u) (V150e3_2E0 u) (V151e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V147l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V148e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V149e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V150e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V151e4_2E0)) _let_2))))))))))))))) (= (exists ((V132l_27_2E0 u) (V133e1_2E0 u) (V134e2_2E0 u) (V135e3_2E0 u) (V136e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V132l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V133e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V134e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V135e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V136e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_13)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_14) _let_5) (exists ((V122l_27_2E0 u) (V123e1_2E0 u) (V124e2_2E0 u) (V125e3_2E0 u) (V126e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V122l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V123e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V124e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V125e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V126e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V112l_27_2E0 u) (V113e1_2E0 u) (V114e2_2E0 u) (V115e3_2E0 u) (V116e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V112l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V113e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V114e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V115e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V116e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_5)) (= (exists ((V107l_27_2E0 u) (V108e1_2E0 u) (V109e2_2E0 u) (V110e3_2E0 u) (V111e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V108e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V109e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V110e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V111e4_2E0)) (_let_1 V107l_27_2E0))))))))))))) (_let_9 _let_2)) (= (_let_6 _let_12) (exists ((V97l_27_2E0 u) (V98e1_2E0 u) (V99e2_2E0 u) (V100e3_2E0 u) (V101e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V98e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V99e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V100e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V101e4_2E0)) (_let_1 V97l_27_2E0)))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_12) _let_5) (exists ((V92l_27_2E0 u) (V93e1_2E0 u) (V94e2_2E0 u) (V95e3_2E0 u) (V96e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V93e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V94e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V95e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V96e4_2E0)) (_let_1 V92l_27_2E0)))))))))))))) (= (exists ((V84e1_2E0 u) (V85e2_2E0 u) (V86e3_2E0 u) (V87e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V84e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V85e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V86e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V87e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_5 _let_2)) (= (= _let_11 _let_5) (exists ((V78l_27_2E0 u) (V79e1_2E0 u) (V80e2_2E0 u) (V81e3_2E0 u) (V82e4_2E0 u) (V83e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V78l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V79e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V80e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V81e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V82e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V83e5_2E0)) _let_2))))))))))))))))) (= (exists ((V72l_27_2E0 u) (V73e1_2E0 u) (V74e2_2E0 u) (V75e3_2E0 u) (V76e4_2E0 u) (V77e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V72l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V73e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V74e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V75e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V76e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V77e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_11)) (= (exists ((V54l_27_2E0 u) (V55e1_2E0 u) (V56e2_2E0 u) (V57e3_2E0 u) (V58e4_2E0 u) (V59e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V54l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V55e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V56e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V57e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V58e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V59e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_11)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_11) _let_5) (exists ((V48l_27_2E0 u) (V49e1_2E0 u) (V50e2_2E0 u) (V51e3_2E0 u) (V52e4_2E0 u) (V53e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V48l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V49e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V50e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V51e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V52e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V53e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V30l_27_2E0 u) (V31e1_2E0 u) (V32e2_2E0 u) (V33e3_2E0 u) (V34e4_2E0 u) (V35e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V32e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V33e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e5_2E0)) (_let_1 V30l_27_2E0))))))))))))))) (_let_9 _let_8)) (= (exists ((V18l_27_2E0 u) (V19e1_2E0 u) (V20e2_2E0 u) (V21e3_2E0 u) (V22e4_2E0 u) (V23e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e5_2E0)) (_let_1 V18l_27_2E0))))))))))))))) (_let_6 _let_2)))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 (c_2Estate__transformer_2EEXT_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) c_2Estate__transformer_2EUNIT_2E0))) (_let_2 c_2Ecombin_2EI_2E0))))) (forall ((A_27a d) (A_27b d) (F9_2E0 u) (F7_2E0 u) (F5_2E0 u) (F3_2E0 u) (F11_2E0 u) (F1_2E0 u) (F8_2E0 u) (F6_2E0 u) (F4_2E0 u) (F2_2E0 u) (F10_2E0 u) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F9_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F5_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F11_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V1P_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F8_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F6_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F10_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_6 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_5))) (let ((_let_9 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_5))) (let ((_let_10 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_5))) (let ((_let_11 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_5))) (let ((_let_12 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_5))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 (_let_2 ((app_2E2 (_let_4 F4_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_12 (_let_2 ((app_2E2 (_let_4 F5_2E0)) _let_3)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((app_2E2 (_let_4 F6_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 (_let_2 ((app_2E2 (_let_4 F7_2E0)) _let_3)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_12 (_let_2 ((app_2E2 (_let_4 F10_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 (_let_2 ((app_2E2 (_let_4 F11_2E0)) _let_3)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_2 ((app_2E2 (_let_4 F8_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_2 ((app_2E2 (_let_4 F9_2E0)) _let_3)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_2 ((app_2E2 (_let_4 F2_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_2 ((app_2E2 (_let_4 F3_2E0)) _let_3)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_8 (_let_2 ((app_2E2 (_let_4 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((app_2E2 (_let_4 F1_2E0)) _let_3))))))))))))))))))))))))))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V4t)) ((F7 V1a) V4t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V17t)) ((F6 V0b) V17t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V13t) (not (V1a V13t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((F3 V0b) V10t) (not (V0b V10t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V18t) (V1a V18t)) (((F9 V1a) V0b) V18t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (or (V1a V15t) (V0b V15t)) (((F5 V1a) V0b) V15t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V11t) (V0b V11t)) (((F8 V1a) V0b) V11t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V8t) (=> (V1a V8t) (V0b V8t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) V7x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V0b) ((F2 V1a) V0b)) V7x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) V9x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN (F3 V0b)) ((F8 V1a) V0b)) V9x)))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) V16x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN (F6 V0b)) ((F9 V1a) V0b)) V16x))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) V14x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V0b) ((F5 V1a) V0b)) V14x)))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN (F4 V1a)) V0b) V12x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) V12x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V5x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN F1) V1a) V5x))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN F0) (F7 V1a)) V2x))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_2) _let_1))) (forall ((V2v_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0)))) (exists ((V3fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))))) (= (forall ((V4v_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V4v_2E0))))) (exists ((V5fv_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V5fv_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_2) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Epair_2Eprod A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (_let_2 A_27b)) _let_1)))) (let ((_let_4 (_let_2 _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_6 ((s _let_5) X2_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (_let_7 X1_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 _let_10) _let_8) _let_6)) (_let_7 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_12)) c_2Eoption_2Eoption__CASE_2E0)) _let_10))) _let_8))) _let_6)))))))))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 _let_1))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_4 (c_2Ellist_2ELTL_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Elist_2EALL__DISTINCT_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0lo mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2hi mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0lo) V1i))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V2hi) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V1i) ((mono_2Ec_2ElistRange_2ElistRangeLHI V0lo) V2hi)) _let_1)))) (= (_let_239 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Ebag_2EEMPTY__BAG_2Emono_2Etyop_2Enum_2Enum)) (_let_239 c_2Ebag_2EEMPTY__BAG_2E0)) (= (_let_321 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ELAST_2Emono_2Etyop_2Enum_2Enum)) (_let_321 c_2Elist_2ELAST_2E0)) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) ((s (_let_3 _let_5)) (c_2Estate__transformer_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Estate__transformer_2EUNIT_2E0))))) (_let_4 c_2Ecombin_2EI_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 _let_8))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_6))) _let_4)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_321 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum)) (_let_321 c_2Elist_2ELENGTH_2E0)) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ElistRange_2ElistRangeINC V0m) V0m) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0m) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum))) (= (_let_320 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum)) (_let_320 c_2Elist_2EEL_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V2x mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0m))) (=> (and (V1p V2x) (= ((mono_2Ec_2Earithmetic_2EMOD V2x) _let_1) ((mono_2Ec_2Earithmetic_2EMOD V3y) _let_1)) (V1p V3y)) (= V2x V3y)))) ((mono_2Ec_2EEncode_2Ecollision__free V0m) V1p))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum)) (= ((F0 V0m) V2i) ((mono_2Ec_2Earithmetic_2E_2B V0m) V2i))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ElistRange_2ElistRangeINC V0m) V1n) ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (F0 V0m)) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V0m)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0s_2E0 u) (V3y_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1t_2E0))) (let ((_let_4 ((s A_27b) V3y_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0s_2E0))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_5 _let_11)) F1_2E0)) _let_8))) _let_7))) _let_4))) _let_3))))))))))))))))) (=> (forall ((V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1t_2E0))) (let ((_let_4 ((s A_27b) V3y_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0s_2E0))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_6))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_15 ((tyop_2Epair_2Eprod _let_14) tyop_2Emin_2Ebool))) (let ((_let_16 (s _let_15))) (let ((_let_17 (_let_1 _let_15))) (let ((_let_18 (_let_5 _let_17))) (let ((_let_19 (_let_9 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_12 _let_19)) F0_2E0)) _let_7))) _let_3))) _let_8))) _let_4)) (_let_16 ((c_2Epair_2E_2C_2E2 ((s _let_14) ((c_2Epair_2E_2C_2E2 _let_8) _let_4))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_5 _let_13)) F1_2E0)) _let_8))) _let_7))) _let_4))) _let_3))))))))))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1t_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0s_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 (_let_1 _let_8)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_7))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (c_2Epred__set_2EFINITE_2E1 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (c_2Epred__set_2EFINITE_2E1 ((s (_let_11 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s (_let_11 _let_8)) (c_2Epair_2EUNCURRY_2E1 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3)))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum)) (= ((F0 V0m) V2i) ((mono_2Ec_2Earithmetic_2E_2B V0m) V2i))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ElistRange_2ElistRangeLHI V0m) V1n) ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (F0 V0m)) ((mono_2Ec_2Earithmetic_2E_2D V1n) V0m)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1e_2E0 u) (V2b_2E0 u) (V3P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V2b_2E0))) (let ((_let_4 ((s (_let_1 tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_5 ((s A_27a) V1e_2E0))) (let ((_let_6 ((c_2Ebag_2EBAG__INN_2E3 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (or (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_4) _let_5)))) (= V0n mono_2Ec_2Enum_2E0)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 _let_4) _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (= (_let_317 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar)) (_let_317 c_2Erich__list_2ESPLITP_2E0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u) (V2m mono_2Etyop_2Enum_2Enum) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V3l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m)))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_6 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption _let_1)))) (=> (and (= (_let_7 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_6)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_2))) ((mono_2Ec_2Eprim__rec_2E_3C V2m) V0n)) (= (_let_5 ((c_2Ellist_2ELNTH_2E2 _let_4) _let_6)) (_let_5 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2)))))))))))))) (forall ((V0lo mono_2Etyop_2Enum_2Enum) (V1hi mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2ElistRange_2ElistRangeLHI V0lo) V1hi)) ((mono_2Ec_2Earithmetic_2E_2D V1hi) V0lo))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (= (_let_315 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar)) (_let_315 c_2Ebool_2ETYPE__DEFINITION_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0limopt)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 ((s (_let_2 A_27b)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_5 ((c_2Ellist_2ELMAP_2E2 _let_4) ((s (tyop_2Ellist_2Ellist A_27b)) ((c_2Ellist_2ELGENLIST_2E2 _let_3) _let_1)))) (_let_5 ((c_2Ellist_2ELGENLIST_2E2 ((s (_let_2 A_27a)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) (_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0p_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) ((s _let_4) V0p_2E0)))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l))))) ((s _let_3) V1e_2E0)))) (exists ((V3x_2E0 u) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (and (= V2l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1e_2E0)) _let_1)))) V4t)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0)) _let_1)))))))))))))))) (=> (forall ((V0p_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1e_2E0 u) (V5x_2E0 u) (V6t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0p_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V1e_2E0))) (let ((_let_8 (s _let_5))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_2 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_11))) (let ((_let_13 (_let_9 _let_12))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_13)) F1_2E0)) _let_4))) (_let_8 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l))))) _let_7))) _let_1))) V6t) (and (= V2l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_8 ((app_2E2 _let_7) _let_1)))) V6t)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))))))))) (forall ((V0p_2E0 u) (V1e_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V1e_2E0))) (let ((_let_7 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (let ((_let_8 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_9 ((s _let_8) V0p_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (_let_4 (_let_10 tyop_2Emin_2Ebool)))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_10 _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_8))) (let ((_let_16 (_let_12 tyop_2Emin_2Ebool))) (let ((_let_17 (_let_10 _let_16))) (= (_let_3 (((c_2EDecode_2Eenc2dec_2E3 _let_9) _let_6) _let_7)) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_15 _let_17)) F0_2E0)) _let_9))) _let_7))) _let_6))) (_let_3 (c_2Eoption_2ESOME_2E1 ((s _let_2) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_15 _let_14)) F1_2E0)) _let_9))) _let_7))) _let_6))))))))) (_let_3 c_2Eoption_2ENONE_2E0))))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Estring_2Echar)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Ebag_2Edominates_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ebag_2Edominates_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) (= ((mono_2Ec_2ElistRange_2ElistRangeINC V1m) V0n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V1m) ((mono_2Ec_2ElistRange_2ElistRangeINC ((mono_2Ec_2Earithmetic_2E_2B V1m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V0n))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_3 ((c_2Erelation_2EWFREC_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V1))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0lo mono_2Etyop_2Enum_2Enum) (V1hi mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1hi) V0lo) (= ((mono_2Ec_2ElistRange_2ElistRangeLHI V0lo) V1hi) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27state d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27state) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27state) A_27a)) V0f_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_3)))) (= (_let_4 ((c_2EerrorStateMonad_2EREAD_2E2 _let_2) _let_1)) (_let_4 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s A_27a) ((app_2E2 _let_2) _let_1))) _let_1)))))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Ecombin_2EI_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ecombin_2EI_2E0)) _let_3))))))) (forall ((A_27a d) (A_27state d) (F0_2E0 u)) (=> (forall ((V1t_2E0 u) (V3a_2E0 u) (V4u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V1t_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_3))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V4u)))) (_let_6 (c_2EerrorStateMonad_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_2)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))))))))))))) (and (forall ((V1t_2E0 u) (V2h_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1t_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 ((s A_27a) V2h_2E0))) (let ((_let_10 (s _let_1))) (= (_let_10 (c_2EerrorStateMonad_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_2)) ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_9) _let_6))) _let_3)))) (_let_10 ((c_2EerrorStateMonad_2EBIND_2E2 (_let_10 ((app_2E2 _let_3) _let_9))) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_6))) _let_3)))))))))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (= (_let_2 (c_2EerrorStateMonad_2EFOREACH_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_4) c_2Elist_2ENIL_2E0)) ((s _let_3) V0a_2E0))))) (_let_2 (c_2EerrorStateMonad_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2EerrorStateMonad_2EJOIN_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0)) _let_4))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V1x_2E0)) (_let_3 V0y_2E0)))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) c_2Ewellorder_2EwZERO_2E0)))))))) mono_2Ec_2Ebool_2EF))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) V0g_2E0))) (let ((_let_4 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) V1m_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 ((c_2EerrorStateMonad_2EEXT_2E2 _let_3) _let_4)) (_let_5 ((c_2EerrorStateMonad_2EBIND_2E2 _let_4) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0xM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (let ((_let_3 (_let_2 V0xM_2E0))) (let ((_let_4 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a)))))) (let ((_let_5 (_let_4 c_2EerrorStateMonad_2EES__FAIL_2E0))) (and (= (_let_4 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_3) _let_5)) _let_5) (= (_let_2 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) c_2EerrorStateMonad_2EES__FAIL_2E0)) _let_3)) (_let_2 c_2EerrorStateMonad_2EES__FAIL_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27state))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27state)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27state) X2_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption (_let_3 _let_2))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27b) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption (_let_3 A_27state)))) (let ((_let_8 ((tyop_2Emin_2Efun A_27state) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2EerrorStateMonad_2ENARROW_2E3 _let_6) _let_5) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_9)) c_2EerrorStateMonad_2ENARROW_2E0)) _let_6))) _let_5))) _let_1)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V3l_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l_27_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_4))) _let_3)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_4))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) _let_3))))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (_let_4 ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_6) _let_3)) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1g_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (= (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_3))) ((s A_27a) V2x_2E0))) _let_3)))))) (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_6 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) V0f_2E0))) (= (_let_3 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1xM_2E0 u) (V2yM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a)))) V2yM_2E0))) (let ((_let_3 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) V1xM_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) V0f_2E0))) (let ((_let_6 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (= (_let_6 (((c_2EerrorStateMonad_2EES__LIFT2_2E3 _let_5) _let_3) _let_2)) (_let_6 ((c_2EerrorStateMonad_2EES__APPLY_2E2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) A_27a)))) ((c_2EerrorStateMonad_2EMMAP_2E2 _let_5) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2EerrorStateMonad_2EBIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2EerrorStateMonad_2EBIND_2E0)) _let_5))) _let_3)))))))))) (= (_let_312 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Enum_2Enum)) (_let_312 c_2Elist_2EFLAT_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (= (_let_5 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27d)))) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27d)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Ebool_2EDATATYPE_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0xM_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (_let_1 V0xM_2E0))) (= (_let_1 ((c_2EerrorStateMonad_2EES__CHOICE_2E2 (_let_1 c_2EerrorStateMonad_2EES__FAIL_2E0)) _let_2)) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s _let_2))) (= (_let_9 (((c_2EerrorStateMonad_2EES__CHOICE_2E3 _let_6) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2EerrorStateMonad_2EES__CHOICE_2E0)) _let_6))) _let_5))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))))) (= (_let_3 (c_2EerrorStateMonad_2Esequence_2E1 ((s (tyop_2Elist_2Elist (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) c_2Elist_2ENIL_2E0))) (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (exists ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))) V1Q)) (=> (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))) V1Q))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EerrorStateMonad_2EmapM_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EerrorStateMonad_2EmapM_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 A_27state)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2EerrorStateMonad_2EEXT_2E2 _let_6) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EEXT_2E0)) _let_6))) _let_3)))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (and (forall ((V4a_2E0 u)) (let ((_let_1 ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) ((s A_27b) V4a_2E0))))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))) (forall ((V5r_2E0 u) (V6s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s (_let_3 A_27b)) V1abs_2E0)))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_1 V5r_2E0))) (let ((_let_11 (app_2E2 (_let_6 (_let_5 _let_10))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_11 _let_10))) (= (_let_9 (_let_8 _let_10)) (_let_9 (_let_8 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 _let_2))) _let_2))))))))))))))))) (forall ((V3a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3a_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1abs_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) _let_2)))) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0)) ((s (_let_3 _let_5)) c_2EerrorStateMonad_2EUNIT_2E0))) (_let_4 c_2Ecombin_2EI_2E0)))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a)))))) (let ((_let_5 (s (_let_4 _let_3)))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0))) (let ((_let_7 (c_2Ecombin_2Eo_2E2 _let_6))) (let ((_let_8 (s (_let_4 _let_2)))) (= (_let_8 (_let_7 (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_6)))) (_let_8 (_let_7 (_let_5 c_2EerrorStateMonad_2EJOIN_2E0))))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EES__GUARD_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) c_2EerrorStateMonad_2EES__GUARD_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (_let_6 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27state d) (V0P_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V3a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2j))) ((s _let_1) V3a_2E0))))) (let ((_let_6 (_let_3 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (app_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (=> (not (= V1i V2j)) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1i) V2j)) ((mono_2Ec_2Earithmetic_2E_2B V1i) _let_10)) ((mono_2Ec_2Earithmetic_2E_2D V1i) _let_10))))) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1i))) _let_5))))))))))))))))) (forall ((V4v mono_2Etyop_2Enum_2Enum) (V5v1 mono_2Etyop_2Enum_2Enum) (V6v2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (_let_3 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_5) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V4v))) ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V5v1))) ((s _let_1) V6v2_2E0)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Epair_2Epair__CASE_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2Epair__CASE_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2d1_2E0 u) (V3d2_2E0 u) (V4x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V4x_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 ((s (_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_4)))) V3d2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 ((s (_let_5 (tyop_2Eoption_2Eoption (_let_1 _let_4)))) V2d1_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (s _let_4))) (let ((_let_11 ((s (_let_7 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_12 ((s (_let_9 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EDecode_2Ewf__decoder_2E2 _let_12) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2EDecode_2Ewf__decoder_2E2 _let_11) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2EEncode_2Elift__prod_2E3 _let_12) _let_11) _let_3)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 ((c_2EDecode_2Edec2enc_2E2 ((s (_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_4)))) (((c_2EDecode_2Edecode__prod_2E3 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__prod_2E2 _let_12) _let_11))) _let_8) _let_6))) _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 (((c_2EEncode_2Eencode__prod_2E3 ((s (_let_9 _let_4)) (c_2EDecode_2Edec2enc_2E1 _let_8))) ((s (_let_7 _let_4)) (c_2EDecode_2Edec2enc_2E1 _let_6))) _let_3))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 A_27state))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EerrorStateMonad_2EWRITE_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EerrorStateMonad_2EWRITE_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c)))) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27d)))) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27d)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27c) V0x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (= (_let_5 ((c_2EerrorStateMonad_2EES__APPLY_2E2 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a)))) (c_2EerrorStateMonad_2EUNIT_2E1 _let_3))) ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)))) (_let_5 (c_2EerrorStateMonad_2EUNIT_2E1 ((s A_27b) ((app_2E2 _let_3) _let_1))))))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27d) A_27e))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_3 _let_2))) V1f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_7))) V0g_2E0))) (let ((_let_9 (s (_let_4 (_let_3 _let_7))))) (= (_let_9 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_8) _let_5)) (_let_9 (c_2Epair_2ECURRY_2E1 ((s (_let_6 _let_7)) ((c_2Eoption_2EOPTION__MCOMP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_7)) (c_2Epair_2EUNCURRY_2E1 _let_8))) ((s (_let_6 _let_2)) (c_2Epair_2EUNCURRY_2E1 _let_5))))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2Efcp__index_2E0)) _let_3))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 A_27a)) V1g_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27d))))) (let ((_let_5 (tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27d)))))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_7 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27d))))) (let ((_let_8 (s (_let_5 _let_7)))) (= (_let_8 (c_2EerrorStateMonad_2EMMAP_2E1 ((s (_let_1 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_2)))) (_let_8 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) (c_2EerrorStateMonad_2EMMAP_2E1 _let_6))) ((s (_let_5 _let_4)) (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Erelation_2EWFREC_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Erelation_2EWFREC_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27d)))) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27d)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0zM_2E0 u) (V1yM_2E0 u) (V2xM_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (_let_1 V0zM_2E0))) (let ((_let_3 (_let_1 V1yM_2E0))) (let ((_let_4 (c_2EerrorStateMonad_2EES__CHOICE_2E2 (_let_1 V2xM_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2EerrorStateMonad_2EES__CHOICE_2E2 _let_3) _let_2)))) (_let_1 ((c_2EerrorStateMonad_2EES__CHOICE_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (A_27state d) (F0_2E0 u) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_3))) (=> (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (forall ((V1h_2E0 u) (V2a_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 ((s _let_1) V2a_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (tyop_2Emin_2Efun _let_6))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) V0R_2E0)) (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) _let_2))))) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) _let_5))) _let_2)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))))))))) (=> (forall ((V4FOREACH_2E0 u) (V9t_2E0 u) (V7a_2E0 u) (V10u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V7a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V9t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_4) _let_2))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_1))) (let ((_let_8 ((s _let_7) V4FOREACH_2E0))) (let ((_let_9 (s _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F4_2E0)) _let_8))) _let_5))) _let_3))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V10u)))) (_let_9 ((app_2E2 _let_8) ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))))))))))))))))) (=> (forall ((V7a_2E0 u) (V4FOREACH_2E0 u) (V8h_2E0 u) (V9t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V7a_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s _let_5) V9t_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_5) _let_3)) _let_1))) (let ((_let_8 ((s _let_7) V4FOREACH_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun _let_7))) (let ((_let_15 ((s A_27a) V8h_2E0))) (let ((_let_16 (s _let_1))) (let ((_let_17 (_let_12 _let_1))) (let ((_let_18 (_let_2 _let_17))) (let ((_let_19 (_let_14 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_10 _let_19)) F3_2E0)) _let_4))) _let_8))) _let_15))) _let_6)) (_let_16 (c_2Ecombin_2EI_2E1 (_let_16 ((c_2EerrorStateMonad_2EBIND_2E2 (_let_16 ((app_2E2 _let_4) _let_15))) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_14 _let_13)) F4_2E0)) _let_8))) _let_6))) _let_4))))))))))))))))))))))))))) (=> (forall ((V4FOREACH_2E0 u) (V6v_2E0 u) (V7a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_4) _let_3)) _let_1))) (let ((_let_6 ((s _let_5) V4FOREACH_2E0))) (let ((_let_7 ((s _let_3) V7a_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_2 (_let_8 _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((s _let_4) V6v_2E0))) (let ((_let_15 (_let_12 _let_1))) (let ((_let_16 (_let_8 _let_15))) (= (_let_13 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_10 _let_16)) F2_2E0)) _let_6))) _let_14))) _let_7)) (_let_13 (((c_2Elist_2Elist__CASE_2E3 _let_14) (_let_13 (c_2Ecombin_2EI_2E1 (_let_13 (c_2EerrorStateMonad_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_12 _let_11)) F3_2E0)) _let_7))) _let_6)))))))))))))))))))))) (=> (forall ((V4FOREACH_2E0 u) (V5a_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4FOREACH_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_1)))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 ((s _let_4) V5a_27_2E0))) (let ((_let_11 (s _let_1))) (= (_let_11 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_9 _let_5)) F1_2E0)) _let_7))) _let_10)) (_let_11 ((c_2Epair_2Epair__CASE_2E2 _let_10) ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_7))))))))))))))))) (= (_let_5 c_2EerrorStateMonad_2EFOREACH_2E0) (_let_5 ((c_2Erelation_2EWFREC_2E2 ((s _let_4) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)))) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F1_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27b))))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V1f_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27d) _let_5)) V0g_2E0))) (let ((_let_7 (s (_let_3 _let_5)))) (= (_let_7 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_6) _let_4)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) (c_2EerrorStateMonad_2EEXT_2E1 _let_6))) _let_4))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 c_2Esorting_2EPERM_2E0) (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 c_2Esorting_2EPERM__SINGLE__SWAP_2E0))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2EerrorStateMonad_2EBIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2EerrorStateMonad_2EBIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Eposet_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)))) (and (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (c_2Epair_2E_2C_2E2 (_let_1 V2x_2E0)))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0l_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V3y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (_let_3 _let_8))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_8) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (_let_3 _let_2))))))))))))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0l_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)))))) (= _let_3 _let_2)))))))))) (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0l_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ewellorder_2Efl_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_3) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3y_2E0 u) (V4ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4ys_2E0))) (let ((_let_4 ((s A_27b) V3y_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_7)) F1_2E0)) _let_4))) _let_3)) (_let_6 (c_2EerrorStateMonad_2EUNIT_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V2f_2E0 u) (V0xs_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (tyop_2Elist_2Elist A_27c))) (let ((_let_8 ((s _let_7) V0xs_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27c) (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (let ((_let_10 ((s _let_9) V2f_2E0))) (let ((_let_11 (s _let_4))) (let ((_let_12 (_let_6 _let_4))) (let ((_let_13 ((tyop_2Emin_2Efun _let_7) _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) F0_2E0)) _let_10))) _let_8))) _let_1)) (_let_11 ((c_2EerrorStateMonad_2EBIND_2E2 (_let_11 ((c_2EerrorStateMonad_2EmapM_2E2 _let_10) _let_8))) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_1))))))))))))))))))) (forall ((V0xs_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0xs_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) _let_5))) (let ((_let_7 ((s _let_6) V2f_2E0))) (let ((_let_8 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_11 ((s A_27c) V1x_2E0))) (let ((_let_12 (s _let_8))) (= (_let_12 ((c_2EerrorStateMonad_2EmapM_2E2 _let_7) (_let_2 ((c_2Elist_2ECONS_2E2 _let_11) _let_3)))) (_let_12 ((c_2EerrorStateMonad_2EBIND_2E2 ((s _let_5) ((app_2E2 _let_7) _let_11))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_3))))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Equotient_2EEQUIV_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Equotient_2EEQUIV_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27a)) (_let_3 A_27b)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ecombin_2Eo_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Ecombin_2Eo_2E0)) _let_2))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EDecode_2Ewf__decoder_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27state d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2))))) (= (_let_3 c_2EerrorStateMonad_2EUNIT_2E0) (_let_3 (c_2Epair_2ECURRY_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) c_2Eoption_2ESOME_2E0)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a)))))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2ECURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2ECURRY_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 A_27state)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_3) _let_2)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_9 (s _let_2))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (V0h_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27f) A_27g))))) V0h_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27e)))) (let ((_let_5 (tyop_2Emin_2Efun A_27g))) (let ((_let_6 (tyop_2Emin_2Efun A_27f))) (let ((_let_7 ((s (_let_6 (_let_5 _let_4))) V1g_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_9 (c_2EerrorStateMonad_2EMCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_8))) V2f_2E0)))) (let ((_let_10 (s (_let_2 (_let_1 _let_8))))) (= (_let_10 (_let_9 ((s (_let_2 (_let_1 _let_4))) ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_3)))) (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 ((s (_let_6 (_let_5 _let_8))) (_let_9 _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (exists ((V2R_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V2R_2E0)) (_let_2 V0ll1_2E0)))) (_let_2 V1ll2_2E0)))) (forall ((V3ll3_2E0 u) (V4ll4_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4ll4_2E0))) (let ((_let_4 (_let_2 V3ll3_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V2R_2E0)) _let_4))) _let_3))) (or (= _let_4 _let_3) (exists ((V5h_2E0 u) (V6t1_2E0 u) (V7t2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6t1_2E0))) (let ((_let_4 (c_2Ellist_2ELCONS_2E2 ((s A_27a) V5h_2E0)))) (let ((_let_5 (_let_2 V7t2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (and (= (_let_2 V4ll4_2E0) (_let_2 (_let_4 _let_5))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) V2R_2E0)) _let_3))) _let_5))) (= (_let_2 V3ll3_2E0) (_let_2 (_let_4 _let_3))))))))))))))))))))))))))) (= (_let_1 V0ll1_2E0) (_let_1 V1ll2_2E0))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_10 (s _let_2))) (= (_let_10 (((c_2EerrorStateMonad_2EBIND_2E3 _let_8) _let_6) _let_1)) (_let_10 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2EerrorStateMonad_2EBIND_2E0)) _let_8))) _let_6))) _let_1)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27state d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27state))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27state) A_27state)) V0f_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_4)))) (= (_let_5 ((c_2EerrorStateMonad_2EWRITE_2E2 _let_3) _let_2)) (_let_5 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))) (_let_1 ((app_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun A_27c) A_27b)) A_27a))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EerrorStateMonad_2EES__APPLY_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EerrorStateMonad_2EES__APPLY_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2ESND_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2ESND_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption (_let_1 A_27state))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) (tyop_2Eoption_2Eoption (_let_1 _let_4))))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2EerrorStateMonad_2EWIDEN_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2EerrorStateMonad_2EWIDEN_2E0)) _let_3)))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27b)))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2EerrorStateMonad_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EerrorStateMonad_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Eantisym_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1ls_2E0))) (= (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 (_let_1 (c_2Emin_2E_3D_2E1 _let_2))) _let_4))) (not (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (= (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 _let_4)) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))))) (= (_let_3 ((c_2EerrorStateMonad_2EmapM_2E2 ((s ((tyop_2Emin_2Efun A_27c) (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a))))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_9 (s _let_2))) (= (_let_9 ((c_2EerrorStateMonad_2EBIND_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2EerrorStateMonad_2EBIND_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c))))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))))) (let ((_let_3 (_let_1 A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V1m_2E0 u) (V2n_2E0 u) (V3a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) V2n_2E0))) (let ((_let_5 ((s A_27b) V3a_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 ((s _let_8) V1m_2E0))) (let ((_let_10 (s _let_2))) (let ((_let_11 (_let_7 _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_9))) _let_4))) _let_5)) (_let_10 ((c_2EerrorStateMonad_2EBIND_2E2 ((s _let_6) ((app_2E2 _let_9) _let_5))) _let_4)))))))))))))))) (forall ((V0k_2E0 u) (V1m_2E0 u) (V2n_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) V2n_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V1m_2E0))) (let ((_let_9 (c_2EerrorStateMonad_2EBIND_2E2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) V0k_2E0)))) (let ((_let_10 (s _let_2))) (let ((_let_11 (_let_6 _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_10 (_let_9 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_4)))) (_let_10 ((c_2EerrorStateMonad_2EBIND_2E2 ((s _let_5) (_let_9 _let_8))) _let_4)))))))))))))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V5g_2E0 u) (V2f_27_2E0 u) (V7p_27_2E0 u) (V3f_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27d) V13x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27e))) (let ((_let_4 ((s _let_3) V3f_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) V7p_27_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_8 ((s _let_7) V2f_27_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27e) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_9))) (let ((_let_11 ((s _let_10) V5g_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_14 ((tyop_2Emin_2Efun _let_3) _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_5) _let_14))) (let ((_let_16 ((tyop_2Emin_2Efun _let_7) _let_15))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_16)) F0_2E0)) _let_11))) _let_8))) _let_6))) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 _let_11) ((s A_27c) ((app_2E2 _let_8) ((s A_27b) ((app_2E2 _let_6) _let_1))))))) ((s A_27e) ((app_2E2 _let_4) _let_1))))))))))))))))))))))) (=> (forall ((V6r_2E0 u) (V2f_27_2E0 u) (V7p_27_2E0 u) (V3f_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27d) V14x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27e))) (let ((_let_4 ((s _let_3) V3f_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) V7p_27_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_8 ((s _let_7) V2f_27_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27e) A_27f))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_9))) (let ((_let_11 ((s _let_10) V6r_2E0))) (let ((_let_12 (s A_27f))) (let ((_let_13 (_let_2 A_27f))) (let ((_let_14 ((tyop_2Emin_2Efun _let_3) _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_5) _let_14))) (let ((_let_16 ((tyop_2Emin_2Efun _let_7) _let_15))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_16)) F1_2E0)) _let_11))) _let_8))) _let_6))) _let_4))) _let_1)) (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 _let_11) ((s A_27c) ((app_2E2 _let_8) ((s A_27b) ((app_2E2 _let_6) _let_1))))))) ((s A_27e) ((app_2E2 _let_4) _let_1)))))))))))))))))))))) (forall ((V0v_2E0 u) (V1v_27_2E0 u) (V2f_27_2E0 u) (V3f_2E0 u) (V4p_2E0 u) (V5g_2E0 u) (V6r_2E0 u) (V7p_27_2E0 u)) (let ((_let_1 ((s A_27b) V1v_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27e))) (let ((_let_4 ((s _let_3) V3f_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) V7p_27_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_8 ((s _let_7) V2f_27_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27e))) (let ((_let_10 (_let_9 A_27f))) (let ((_let_11 (tyop_2Emin_2Efun A_27c))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 ((s _let_12) V6r_2E0))) (let ((_let_14 (_let_2 A_27f))) (let ((_let_15 (tyop_2Emin_2Efun _let_3))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 (tyop_2Emin_2Efun _let_5))) (let ((_let_18 (_let_17 _let_16))) (let ((_let_19 (tyop_2Emin_2Efun _let_7))) (let ((_let_20 (_let_19 _let_18))) (let ((_let_21 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_22 (_let_11 _let_21))) (let ((_let_23 ((s _let_22) V5g_2E0))) (let ((_let_24 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_25 (_let_15 _let_24))) (let ((_let_26 (_let_17 _let_25))) (let ((_let_27 (_let_19 _let_26))) (let ((_let_28 (s (tyop_2Eoption_2Eoption A_27f)))) (let ((_let_29 ((s A_27c) ((app_2E2 _let_8) _let_1)))) (=> (and (forall ((V9x_2E0 u)) (let ((_let_1 (s A_27a))) (=> (= (_let_1 V0v_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27e) A_27a)) V4p_2E0)) ((s A_27e) V9x_2E0)))) (exists ((V10x_27_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V7p_27_2E0)) ((s A_27d) V10x_27_2E0))) (_let_1 V1v_27_2E0))))))) (forall ((V11x_2E0 u) (V12y_2E0 u)) (let ((_let_1 (s A_27e))) (let ((_let_2 (_let_1 V12y_2E0))) (let ((_let_3 (_let_1 V11x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27e) A_27a)) V4p_2E0)))) (let ((_let_5 (s A_27a))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V8x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((s A_27d) V8x_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (s A_27b))) (=> (= (_let_4 V1v_27_2E0) (_let_4 ((app_2E2 ((s (_let_3 A_27b)) V7p_27_2E0)) _let_2))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27e) A_27a)) V4p_2E0)) ((s A_27e) ((app_2E2 ((s (_let_3 A_27e)) V3f_2E0)) _let_2)))) (_let_1 V0v_2E0))))))))) (= (_let_28 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s (_let_9 A_27a)) V4p_2E0)) ((s _let_21) ((app_2E2 _let_23) _let_29))) ((s _let_10) ((app_2E2 _let_13) _let_29))) ((s A_27a) V0v_2E0))) (_let_28 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_6) ((s _let_24) ((app_2E2 ((s _let_25) ((app_2E2 ((s _let_26) ((app_2E2 ((s _let_27) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_22) _let_27)) F0_2E0)) _let_23))) _let_8))) _let_6))) _let_4))) ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_20) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_12) _let_20)) F1_2E0)) _let_13))) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))))))))))))))))))))))) (forall ((A_27state d) (F0_2E0 u) (F4 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F5_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_4))) (=> (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (and (forall ((V1a_2E0 u) (V2j mono_2Etyop_2Enum_2Enum) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2j))) ((s _let_1) V1a_2E0))))) (let ((_let_6 (_let_3 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_9 (tyop_2Emin_2Efun _let_6))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (=> (not (= V3i V2j)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) V0R_2E0)) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V3i) V2j)) ((mono_2Ec_2Earithmetic_2E_2B V3i) _let_8)) ((mono_2Ec_2Earithmetic_2E_2D V3i) _let_8))))) _let_5))))) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3i))) _let_5))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EWF_2E1 _let_4))))))))))) (=> (forall ((V6i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum)) (= (= V6i V8j) ((F4 V6i) V8j))) (=> (forall ((V4FOR_2E0 u) (V6i mono_2Etyop_2Enum_2Enum) (V8j mono_2Etyop_2Enum_2Enum) (V9a_2E0 u) (V10u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V9a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V8j)))) (let ((_let_7 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_10 (_let_7 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_10) _let_1))) (let ((_let_12 ((s _let_11) V4FOR_2E0))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_15 ((tyop_2Emin_2Efun _let_3) _let_14))) (let ((_let_16 (_let_2 _let_15))) (let ((_let_17 (_let_2 _let_16))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_17)) F5_2E0)) _let_12))) (_let_5 (i_mono_2Etyop_2Enum_2Enum V6i))))) _let_6))) _let_4))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V10u)))) (_let_13 ((app_2E2 _let_12) ((s _let_10) ((c_2Epair_2E_2C_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V6i) V8j)) ((mono_2Ec_2Earithmetic_2E_2B V6i) _let_9)) ((mono_2Ec_2Earithmetic_2E_2D V6i) _let_9))))) ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))))))))))))))))))))))))) (=> (forall ((V6i mono_2Etyop_2Enum_2Enum) (V4FOR_2E0 u) (V8j mono_2Etyop_2Enum_2Enum) (V9a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V9a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V8j)))) (let ((_let_7 (_let_5 (i_mono_2Etyop_2Enum_2Enum V6i)))) (let ((_let_8 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_9 ((tyop_2Emin_2Efun (_let_8 (_let_8 _let_3))) _let_1))) (let ((_let_10 ((s _let_9) V4FOR_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_2 _let_13))) (let ((_let_15 (_let_2 _let_14))) (let ((_let_16 (tyop_2Emin_2Efun _let_9))) (let ((_let_17 (s _let_1))) (let ((_let_18 (_let_17 ((app_2E2 _let_4) _let_7)))) (let ((_let_19 (_let_12 _let_1))) (let ((_let_20 (_let_2 _let_19))) (let ((_let_21 (_let_16 _let_20))) (= (_let_17 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_2 _let_21)) F3_2E0)) _let_7))) _let_10))) _let_6))) _let_4)) (_let_17 (c_2Ecombin_2EI_2E1 (_let_17 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F4 V6i) V8j)))) _let_18) (_let_17 ((c_2EerrorStateMonad_2EBIND_2E2 _let_18) ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_16 _let_15)) F5_2E0)) _let_10))) _let_7))) _let_6))) _let_4))))))))))))))))))))))))))))))) (=> (forall ((V4FOR_2E0 u) (V6i mono_2Etyop_2Enum_2Enum) (V7v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_4 _let_5)) _let_1))) (let ((_let_7 ((s _let_6) V4FOR_2E0))) (let ((_let_8 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6i)))) (let ((_let_9 (_let_2 ((tyop_2Emin_2Efun _let_3) _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 ((s _let_5) V7v1_2E0))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_15 (_let_2 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_10 _let_15)) F2_2E0)) _let_7))) _let_8))) _let_12)) (_let_13 ((c_2Epair_2Epair__CASE_2E2 _let_12) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_2 _let_11)) F3_2E0)) _let_8))) _let_7))))))))))))))))))))) (=> (forall ((V4FOR_2E0 u) (V5a_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_2 _let_1)))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V4FOR_2E0))) (let ((_let_9 (_let_2 ((tyop_2Emin_2Efun _let_4) _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 ((s _let_5) V5a_27_2E0))) (let ((_let_12 (s _let_1))) (= (_let_12 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_10 _let_6)) F1_2E0)) _let_8))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F2_2E0)) _let_8)))))))))))))))))) (= (_let_6 c_2EerrorStateMonad_2EFOR_2E0) (_let_6 ((c_2Erelation_2EWFREC_2E2 ((s _let_5) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) F0_2E0)))) ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F1_2E0))))))))))))))))) (forall ((A_27a d) (A_27state d) (V0P_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s _let_2) c_2Elist_2ENIL_2E0)) ((s _let_1) V1a_2E0)))))))))) (forall ((V2h_2E0 u) (V3t_2E0 u) (V4a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 ((s _let_1) V4a_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (app_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) _let_5))) _let_2))))))))))))))))) (forall ((V5v_2E0 u) (V6v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s _let_2) V5v_2E0)) ((s _let_1) V6v1_2E0)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))) (let ((_let_3 (_let_1 V1L_2E0))) (let ((_let_4 (= _let_3 _let_2))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (= _let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_2) _let_3)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))) _let_4)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V1x_27_2E0))) (let ((_let_2 ((s A_27b) V0x_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_3)))) (= (_let_4 ((c_2EerrorStateMonad_2EUNIT_2E2 _let_2) _let_1)) (_let_4 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0k_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0k_2E0))) (= (_let_2 ((c_2EerrorStateMonad_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) c_2EerrorStateMonad_2EUNIT_2E0))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0xM_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (_let_1 V0xM_2E0))) (= (_let_1 ((c_2EerrorStateMonad_2EES__CHOICE_2E2 _let_2) (_let_1 c_2EerrorStateMonad_2EES__FAIL_2E0))) _let_2)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t0) (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (and (V1b ((mono_2Ec_2Earithmetic_2E_2B V3delta) V0t0)) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4t) V3delta) (and (not (V1b _let_1)) (V2a _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2Esequence_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EerrorStateMonad_2Esequence_2E0)) _let_3))))))))) (forall ((A_27a d) (V0b Bool)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))))) (let ((_let_2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b)))) (= (_let_1 (c_2EerrorStateMonad_2EES__GUARD_2E1 _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 _let_2) (_let_1 (c_2EerrorStateMonad_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))) (_let_1 c_2EerrorStateMonad_2EES__FAIL_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27state d) (X0 mono_2Etyop_2Eone_2Eone) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_3 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27d d) (A_27e d) (A_27f d) (A_27g d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27f) A_27g)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_1)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27f) ((tyop_2Emin_2Efun A_27g) _let_1)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27f) A_27g)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_1))))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 (_let_4 (tyop_2Eoption_2Eoption A_27c)))))) (let ((_let_7 (_let_6 V0g_2E0))) (and (= (_let_6 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) ((s (_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) c_2EerrorStateMonad_2EUNIT_2E0))) _let_7) (= (_let_2 ((c_2EerrorStateMonad_2EMCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27f) ((tyop_2Emin_2Efun A_27g) _let_1))) c_2EerrorStateMonad_2EUNIT_2E0)) _let_3)) _let_3)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0fM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) V0fM_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))))) (and (= (_let_4 ((c_2EerrorStateMonad_2EBIND_2E2 (_let_6 (c_2EerrorStateMonad_2EES__GUARD_2E1 (_let_5 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))))) _let_3)) (_let_4 c_2EerrorStateMonad_2EES__FAIL_2E0)) (= (_let_4 ((c_2EerrorStateMonad_2EBIND_2E2 (_let_6 (c_2EerrorStateMonad_2EES__GUARD_2E1 (_let_5 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))))) _let_3)) (_let_4 ((app_2E2 _let_3) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2EerrorStateMonad_2EES__CHOICE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EerrorStateMonad_2EES__CHOICE_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_1))) (= (_let_5 (c_2EerrorStateMonad_2EFOR_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) c_2EerrorStateMonad_2EFOR_2E0)) _let_4))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) A_27a))))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2EerrorStateMonad_2EMMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a)))))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2EerrorStateMonad_2EMMAP_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27c))))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c)))) A_27c)))))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (= mono_2Ec_2EASCIInumbers_2Enum__to__oct__string ((mono_2Ec_2EASCIInumbers_2En2s _let_35) mono_2Ec_2EASCIInumbers_2EHEX)) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2)))) (forall ((V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (c_2Esorting_2ESORTED_2E2 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))) (= _let_3 _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t0)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE (F0 V2a)) V1b) V0t0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2EBEFORE _let_1) V0b)))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 (c_2EerrorStateMonad_2EES__FAIL_2E1 ((s A_27b) V0s_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2EerrorStateMonad_2EFOREACH_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2EerrorStateMonad_2EFOREACH_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4r_2E0 u) (V5s1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 ((s _let_1) V5s1_2E0))) (let ((_let_3 ((s A_27a) V4r_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) F1_2E0)) _let_3))) _let_2)) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) ((s A_27state) (c_2Epair_2ESND_2E1 _let_2))))))))))))))) (=> (forall ((V3v_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 A_27state)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 (_let_1 _let_3))) (let ((_let_5 ((s _let_4) V3v_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_2)) F0_2E0)) _let_5)) (_let_6 ((c_2Epair_2Epair__CASE_2E2 _let_5) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_3) _let_2))) F1_2E0))))))))))) (forall ((V0v_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 A_27state)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 (_let_1 _let_3))) (let ((_let_5 (s _let_2))) (let ((_let_6 ((s A_27state) V2x_2E0))) (let ((_let_7 ((s A_27b) V0v_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_9 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) V1f_2E0))) (= (_let_5 (((c_2EerrorStateMonad_2ENARROW_2E3 _let_7) _let_9) _let_6)) (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_8) ((app_2E2 _let_9) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_7) _let_6))))) (_let_5 c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun _let_4) _let_2)) F0_2E0))))))))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V3t) (and (V0b V3t) (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V0b) ((F0 V1a) V0b)) V2x)))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2R_2E0 u) (V3h_2E0 u) (V4hd_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4hd_2E0))) (let ((_let_3 (_let_1 V3h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (and (forall ((V0R_2E0 u) (V1h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_3 (c_2Epair_2E_2C_2E2 _let_2))) (let ((_let_4 (tyop_2Epair_2Eprod _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (= (_let_6 (((c_2Esorting_2EPART3_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1h_2E0)) _let_2)) (_let_6 (_let_3 ((s _let_5) (_let_3 _let_2))))))))))))) (forall ((V2R_2E0 u) (V3h_2E0 u) (V4hd_2E0 u) (V5tl_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5tl_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3h_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V2R_2E0))) (let ((_let_11 ((c_2Esorting_2EPART3_2E3 _let_10) _let_5))) (let ((_let_12 (tyop_2Epair_2Eprod _let_1))) (let ((_let_13 (_let_12 _let_1))) (let ((_let_14 (s (_let_12 _let_13)))) (let ((_let_15 (_let_14 (_let_11 _let_3)))) (let ((_let_16 (_let_4 V4hd_2E0))) (let ((_let_17 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_18 (_let_17 (c_2Elist_2ECONS_2E1 _let_16)))) (let ((_let_19 (_let_17 c_2Ecombin_2EI_2E0))) (let ((_let_20 (c_2Epair_2E_23_23_2E2 _let_19))) (let ((_let_21 (s ((tyop_2Emin_2Efun _let_13) _let_13)))) (let ((_let_22 (c_2Epair_2E_23_23_2E3 _let_19))) (let ((_let_23 (s _let_7))) (let ((_let_24 (s tyop_2Emin_2Ebool))) (= (_let_14 (_let_11 (_let_2 ((c_2Elist_2ECONS_2E2 _let_16) _let_3)))) (_let_14 (((c_2Ebool_2ECOND_2E3 (_let_24 ((app_2E2 (_let_23 ((app_2E2 (_let_9 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_8)) F0_2E0)) _let_10))) _let_5))) _let_16))) (_let_14 ((_let_22 (_let_21 ((c_2Epair_2E_23_23_2E2 _let_18) _let_19))) _let_15))) (_let_14 (((c_2Ebool_2ECOND_2E3 (_let_24 ((app_2E2 (_let_23 ((app_2E2 _let_10) _let_16))) _let_5))) (_let_14 (((c_2Epair_2E_23_23_2E3 _let_18) (_let_21 (_let_20 _let_19))) _let_15))) (_let_14 ((_let_22 (_let_21 (_let_20 _let_18))) _let_15))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELUNFOLD_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_8) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_8))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 (c_2EerrorStateMonad_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0))) (_let_2 c_2Ecombin_2EI_2E0))))) (= (_let_237 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar)) (_let_237 c_2Elist_2EREVERSE_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2Ellist__abs_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2Ellist__abs_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows2_2E0 u) (V2rows1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V1rows2_2E0))) (let ((_let_3 ((s A_27a) V0v_2E0))) (let ((_let_4 (c_2EpatternMatches_2EPMATCH_2E2 _let_3))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2rows1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_3) _let_6) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2EerrorStateMonad_2EJOIN_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0)) _let_4))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V0n) (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V1m)) (= V0n V1m))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0xM_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) V0xM_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (= (_let_5 ((c_2EerrorStateMonad_2EES__APPLY_2E2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a)))) (c_2EerrorStateMonad_2EUNIT_2E1 _let_4))) _let_2)) (_let_5 ((c_2EerrorStateMonad_2EMMAP_2E2 _let_4) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_2 _let_1)))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun _let_4) _let_1)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 _let_4))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_10 (s _let_1))) (= (_let_10 ((c_2Epair_2Epair__CASE_2E2 _let_8) _let_6)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epair_2Epair__CASE_2E0)) _let_8))) _let_6)))))))))))))) (forall ((A_27a d) (A_27b d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_4 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_4)) _let_3)))) (=> (forall ((V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3xs_2E0))) (let ((_let_4 ((s A_27b) V2x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_7)) F2_2E0)) _let_4))) _let_3)) (_let_6 (c_2EerrorStateMonad_2EUNIT_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V1ms_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (s _let_3))) (let ((_let_7 (_let_6 V1ms_2E0))) (let ((_let_8 (_let_5 _let_3))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F1_2E0)) _let_7))) _let_1)) (_let_6 ((c_2EerrorStateMonad_2EBIND_2E2 _let_7) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F2_2E0)) _let_1)))))))))))))) (=> (forall ((V0m_2E0 u) (V1ms_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1ms_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_8 ((s _let_7) V0m_2E0))) (let ((_let_9 (_let_6 _let_2))) (= (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4)) (_let_3 ((c_2EerrorStateMonad_2EBIND_2E2 _let_8) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4))))))))))))))) (= (_let_5 c_2EerrorStateMonad_2Esequence_2E0) (_let_5 ((c_2Elist_2EFOLDR_2E2 ((s ((tyop_2Emin_2Efun _let_4) ((tyop_2Emin_2Efun _let_3) _let_3))) F0_2E0)) ((s _let_3) (c_2EerrorStateMonad_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (or (exists ((V2d mono_2Etyop_2Enum_2Enum)) (and (forall ((V3t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3t) V2d) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V3t) V0t0))))) (V1b ((mono_2Ec_2Earithmetic_2E_2B V2d) V0t0)))) (forall ((V4d mono_2Etyop_2Enum_2Enum)) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V4d) V0t0)))))) (forall ((A_27a d) (X0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_1))))))) (forall ((A_27state d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27c) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F1_2E0)) _let_4))) _let_1)) (_let_6 (c_2EerrorStateMonad_2EUNIT_2E1 ((s A_27b) ((app_2E2 _let_4) _let_1))))))))))))) (=> (forall ((V1xM_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V2f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_9 ((s _let_8) V1xM_2E0))) (let ((_let_10 (s _let_5))) (let ((_let_11 (_let_7 _let_5))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_3)) (_let_10 ((c_2EerrorStateMonad_2EBIND_2E2 _let_9) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F1_2E0)) _let_3))))))))))))))))) (forall ((V0fM_2E0 u) (V1xM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((s _let_2) V1xM_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_7 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) A_27a)))) V0fM_2E0))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2EerrorStateMonad_2EES__APPLY_2E2 _let_7) _let_3)) (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_7) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_3))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F0 V2a) V4t) (not (V2a V4t)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3t1 mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) (F0 V2a))))) (not (V1b V3t1)))) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27e)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (_let_1 _let_5)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (F0 (-> Bool Bool))) (=> (forall ((V2P Bool)) (= (not V2P) (F0 V2P))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1i_2E0))) (let ((_let_4 (_let_2 V0v_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool (F0 V2P)))))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27state))) (let ((_let_4 ((tyop_2Emin_2Efun A_27state) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (A_27state d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s1_2E0 u) (V4r_2E0 u) (V5s3_2E0 u)) (let ((_let_1 ((s A_27state) V5s3_2E0))) (let ((_let_2 ((s A_27b) V1s1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((s A_27a) V4r_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_3))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun A_27state) _let_6))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_9)) F2_2E0)) _let_2))) _let_4))) _let_1)) (_let_7 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))))))))))))) (=> (forall ((V1s1_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27b) V1s1_2E0))) (let ((_let_2 (tyop_2Epair_2Eprod A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27state))))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) _let_3)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_2 A_27state))) (let ((_let_7 ((s _let_6) V3v_2E0))) (let ((_let_8 (s _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_3))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_5 _let_9)) F1_2E0)) _let_1))) _let_7)) (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_7) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F2_2E0)) _let_1))))))))))))))) (=> (forall ((V0f_2E0 u) (V1s1_2E0 u) (V2s2_2E0 u)) (let ((_let_1 ((s A_27b) V1s1_2E0))) (let ((_let_2 (tyop_2Epair_2Eprod A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27state))))) (let ((_let_4 (_let_2 A_27state))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (s _let_3))) (let ((_let_8 ((s A_27state) V2s2_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_10 (tyop_2Emin_2Efun A_27state))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 ((s _let_11) V0f_2E0))) (let ((_let_13 (_let_10 _let_3))) (let ((_let_14 (_let_6 _let_13))) (= (_let_7 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_14)) F0_2E0)) _let_12))) _let_1))) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 _let_12) _let_8))) (_let_7 c_2Eoption_2ENONE_2E0)) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_1)))))))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption (_let_1 A_27state))))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_6 (tyop_2Eoption_2Eoption (_let_1 _let_5)))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) (_let_2 _let_6)))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_5) _let_6)))) (= (_let_8 (c_2EerrorStateMonad_2EWIDEN_2E1 _let_4)) (_let_8 (c_2Epair_2EUNCURRY_2E1 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esorting_2EQSORT3_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Esorting_2EQSORT3_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27b))))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27c))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_6 A_27d))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s A_27d))) (= (_let_12 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_8) _let_5) _let_3) _let_1)) (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_8))) _let_5))) _let_3))) _let_1)))))))))))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27d) A_27e))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1L1_2E0 u) (V2L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2L2_2E0))) (let ((_let_3 (_let_1 V1L1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (c_2Esorting_2ESORTED_2E2 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_10 (s A_27a))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) (_let_10 (c_2Elist_2ELAST_2E1 _let_3))))) (_let_10 (c_2Elist_2EHD_2E1 _let_2))))) (= _let_2 _let_9) (= _let_3 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27d))))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27d)))))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27d))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V3v1_2E0 u)) (let ((_let_1 ((s A_27a) V3v1_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F0_2E0)) _let_1)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_1))))))) (forall ((V0xM_2E0 u) (V1yM_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s A_27b) V2s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_4 (_let_3 V1yM_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_3 V0xM_2E0))) (= (_let_5 (((c_2EerrorStateMonad_2EES__CHOICE_2E3 _let_6) _let_4) _let_2)) (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 (_let_5 ((app_2E2 _let_6) _let_2))) (_let_5 ((app_2E2 _let_4) _let_2))) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EdirGraph_2EREACH_2E3 _let_6) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EdirGraph_2EREACH_2E0)) _let_6))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EMAP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2EMAP_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EWF_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s (_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c))))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (c_2EerrorStateMonad_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27c))))) (let ((_let_6 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27c)))))) (let ((_let_7 (s (_let_6 _let_2)))) (= (_let_7 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_6 _let_3)) c_2EerrorStateMonad_2EJOIN_2E0))) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0)) ((s (_let_6 _let_5)) (c_2EerrorStateMonad_2EMMAP_2E1 _let_4))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1)))))))))) (= (_let_310 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Esum_2EINL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool)) (_let_310 c_2Esum_2EINL_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (forall ((V1r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Eacyclic_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27c) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 ((s A_27a) V0e_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (c_2Ebag_2EEL__BAG_2E1 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_1) _let_1))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eset__relation_2Ercomp_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eset__relation_2Ercomp_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (not (= (V2f V1n) mono_2Ec_2Enum_2E0))) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Esum__num_2ESUM V0m) V2f)) ((mono_2Ec_2Esum__num_2ESUM (mono_2Ec_2Enum_2ESUC V1n)) V2f)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erelation_2ERSUBSET_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERSUBSET_2E0)) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eset__relation_2Eupper__bounds_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Eupper__bounds_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s _let_1) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eset__relation_2Eget__min_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Eset__relation_2Eget__min_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p))) (= ((mono_2Ec_2Esum__num_2EGSUM (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1m) V2n))) V3f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V1m)) V3f)) ((mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0p) V1m)) V2n)) V3f))))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1R_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (= (= _let_4 (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_2))) (= (_let_1 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_4)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 (s _let_1))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (= (_let_308 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Emin_2Ebool)) (_let_308 c_2Ecardinal_2EHAS__SIZE_2E0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2ESING_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2ESING_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eirreflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (not (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1))))) (let ((_let_6 (_let_2 V1b2_2E0))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_6) _let_1))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (((c_2Ebag_2EBAG__MERGE_2E3 _let_3) _let_6) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C _let_5) _let_7)) _let_7) _let_5)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V1s_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2x_2E0))) (let ((_let_6 (_let_3 V1s_2E0))) (let ((_let_7 (_let_4 V3y_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_1 _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_2) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_1 _let_12)) F0_2E0)) _let_5))) _let_6))) _let_7)) (_let_10 ((c_2Epair_2E_2C_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_7) _let_5))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_7) (_let_3 ((c_2Epred__set_2EUNION_2E2 _let_6) (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) (_let_3 c_2Epred__set_2EEMPTY_2E0))))))))))))))))))))))) (forall ((V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (_let_3 V1s_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)))) (let ((_let_10 (_let_9 V0r_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 _let_4) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Eset__relation_2Elinear__order_2E2 _let_10) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Eset__relation_2Elinear__order_2E2 (_let_9 ((c_2Epred__set_2EUNION_2E2 _let_10) (_let_9 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F0_2E0)) _let_4))) _let_5))))))) (_let_3 ((c_2Epred__set_2EUNION_2E2 _let_5) (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_3 c_2Epred__set_2EEMPTY_2E0))))))))))))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))))) (= (_let_1 c_2Eset__relation_2Erel__to__reln_2E0) (_let_1 c_2Epair_2EUNCURRY_2E0)))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) (_let_4 V2y_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (exists ((V3z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r_2E0))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3z_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V2y_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) _let_5))) _let_3))))))))))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V1s_2E0 u) (V3y_2E0 u) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) V0f_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1s_2E0))) (let ((_let_8 (_let_4 V2x_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (app_2E2 _let_3))) (let ((_let_14 (s tyop_2Enum_2Enum))) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_14 (_let_13 _let_8)))) (j_mono_2Etyop_2Enum_2Enum (_let_14 (_let_13 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_5) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_8) _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_1 _let_11)) F1_2E0)) _let_8))) _let_7))) _let_5))) _let_3))))))))))))))))))) (=> (forall ((V1s_2E0 u) (V0f_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) V0f_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1s_2E0))) (let ((_let_8 (_let_4 V2x_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_6))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_15 ((tyop_2Epair_2Eprod _let_14) tyop_2Emin_2Ebool))) (let ((_let_16 (s _let_15))) (let ((_let_17 (_let_1 _let_15))) (let ((_let_18 (_let_1 _let_17))) (let ((_let_19 (_let_9 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_12 _let_19)) F0_2E0)) _let_7))) _let_3))) _let_8))) _let_5)) (_let_16 ((c_2Epair_2E_2C_2E2 ((s _let_14) ((c_2Epair_2E_2C_2E2 _let_8) _let_5))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_1 _let_13)) F1_2E0)) _let_8))) _let_7))) _let_5))) _let_3))))))))))))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) V0f_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V1s_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 (_let_1 _let_7)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (s (_let_10 tyop_2Emin_2Ebool)))) (= (_let_11 ((c_2Eset__relation_2Enum__order_2E2 _let_3) _let_5)) (_let_11 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_10 _let_7)) (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_3)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eset__relation_2Erel__to__reln_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eset__relation_2Erel__to__reln_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2Ellist__rep_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Ellist_2Ellist__rep_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2r_2E0))) (let ((_let_4 ((s _let_1) V0x_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_8 (s A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) _let_7))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_8 (c_2Epair_2EFST_2E1 _let_4))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_8 (c_2Epair_2ESND_2E1 _let_4))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1xs_2E0 u) (V0xss_2E0 u) (V2xs_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0xss_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 V2xs_27_2E0))) (let ((_let_7 (_let_5 V1xs_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_2 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_2 _let_11)) F0_2E0)) _let_7))) _let_4))) _let_6)) (_let_9 ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Epred__set_2EINTER_2E2 _let_6) _let_7))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_6) _let_4))))))))))))))))) (forall ((V0xss_2E0 u) (V1xs_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0xss_2E0))) (let ((_let_7 (_let_2 V1xs_2E0))) (let ((_let_8 (_let_3 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (= (_let_5 ((c_2Eset__relation_2Eper__restrict_2E2 _let_6) _let_7)) (_let_5 ((c_2Epred__set_2EDELETE_2E2 (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_3 _let_9)) F0_2E0)) _let_7))) _let_6))))) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V1tc_27_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 _let_2))) (_let_1 V5y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 V4x_2E0)))) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0r_27_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V1r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Erange_2E1 _let_4))) (_let_3 (c_2Eset__relation_2Erange_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1lo_2E0 u) (V2X_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1lo_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2X_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Erelation_2ERRANGE_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Erelation_2ERRANGE_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Eset__relation_2Eall__choices_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Eset__relation_2Eall__choices_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27d))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 ((s (_let_6 A_27d)) V4abs2_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) V3R2_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_9) _let_7) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R1_2E0)) _let_9))) ((s (_let_8 _let_5)) ((c_2Equotient_2E_2D_2D_3E_2E2 ((s (_let_4 A_27a)) V2rep1_2E0)) _let_7))) ((s ((tyop_2Emin_2Efun _let_5) _let_3)) ((c_2Equotient_2E_2D_2D_3E_2E2 ((s (_let_2 A_27c)) V1abs1_2E0)) _let_1)))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Etc_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Eset__relation_2Etc_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Eset__relation_2Estrict_2E0)) _let_3))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27d))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0xy_2E0 u) (V1R_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V0xy_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erel__to__reln_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Etransitive_2E1 _let_3))) (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s A_27a) V2x_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_2) _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V4y_2E0))) (let ((_let_5 (_let_3 V3x_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_4) _let_8))) (not (= _let_5 _let_4))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) _let_2))))))))) (forall ((A_27a d) (V0r_2E0 u)) (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (=> (exists ((V5z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r_2E0))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V5z_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V4y_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 (_let_4 V3x_2E0)) _let_5))) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V3x_2E0)) (_let_3 V4y_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r_2E0))))))))))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) (_let_4 V2y_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V6z_2E0))) (let ((_let_6 (_let_4 V4x_2E0))) (let ((_let_7 (s _let_1))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) V1tc_27_2E0)) _let_6))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V5y_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F1 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V0a V2t)) ((F0 V0a) V2t))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V0a)) F1) V1x)) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a) V1x)))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EINJ_2E3 _let_3) _let_2) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V2t))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) ((c_2Eset__relation_2Enum__order_2E2 _let_3) _let_2))) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_5 ((c_2Ellist_2ELGENLIST_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))))) (_let_5 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) ((app_2E2 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_5 ((c_2Ellist_2ELGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V1n)))))))))))))) (= (_let_1 ((c_2Ellist_2ELGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_1 c_2Ellist_2ELNIL_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Estrict__linear__order_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V1R_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2ERSUBSET_2E2 _let_4) (_let_3 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_4) ((s _let_2) V0s_2E0))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u) (F2_2E0 u)) (=> (forall ((V3__0_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F1_2E0)) ((s A_27b) V3__0_2E0)))) mono_2Ec_2Ebool_2ET)) (=> (forall ((V2__0_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2__0_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) F0_2E0)) _let_2)) _let_2)))) (=> (forall ((V4__0_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) F2_2E0)) ((s A_27b) V4__0_2E0))) (_let_1 c_2Ebool_2EARB_2E0)))) (forall ((V0v_2E0 u) (V1rows_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V1rows_2E0))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V0v_2E0)))) (let ((_let_6 (s A_27a))) (= (_let_6 (_let_5 _let_4)) (_let_6 (_let_5 (_let_3 ((c_2Elist_2ESNOC_2E2 ((s _let_2) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_1 A_27b)) F0_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) F1_2E0)) ((s (_let_1 A_27a)) F2_2E0)))) _let_4)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Estrict__linear__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)) _let_2)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Elinear__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)) _let_2)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Estrict__linear__order_2E2 (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eantisymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1lo_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_2) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1lo_2E0)))) _let_2)))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2r_2E0 u) (V3s_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1y_2E0))) (let ((_let_6 (_let_4 V0x_2E0))) (let ((_let_7 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) _let_9))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_6) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_5) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (= (_let_24 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2Emono_2Etyop_2Emin_2Ebool)) (_let_24 c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E0)) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_4))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V1b2_2E0))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u) (V1v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0P_2E0)))) (let ((_let_3 (s A_27b))) (= (_let_3 (_let_2 (_let_1 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27c) V1v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27a)))) c_2Elist_2ENIL_2E0))))) (_let_3 (_let_2 (_let_1 c_2Ebool_2EARB_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (= (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_2)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EDELETE_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_1) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27a) V2y_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) (_let_2 (c_2Eset__relation_2Eall__choices_2E1 (_let_2 V1s_2E0))))))) (exists ((V3z_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V3z_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V2y_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (c_2Eset__relation_2Etc_2E1 (_let_1 V0s_2E0))))) (let ((_let_3 (_let_1 V1r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Etc_2E1 _let_3))) _let_2))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2e_2E0 u) (V4es_2E0 u)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V4es_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F2_2E0)) _let_1))) _let_5)) (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)))))))))) (=> (forall ((V3es_2E0 u) (V2e_2E0 u) (V1xss_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1xss_2E0))) (let ((_let_7 ((s A_27a) V2e_2E0))) (let ((_let_8 (_let_3 _let_2))) (let ((_let_9 (s _let_2))) (let ((_let_10 (_let_9 V3es_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_13 (_let_1 _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_3 _let_13)) F1_2E0)) _let_10))) _let_7))) _let_6))) (and (not (= _let_10 (_let_9 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 _let_10) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F2_2E0)) _let_7))) _let_6))))))))))))))))))))) (=> (forall ((V2e_2E0 u) (V1xss_2E0 u) (V3es_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V1xss_2E0))) (let ((_let_6 ((s A_27a) V2e_2E0))) (let ((_let_7 ((s _let_2) V3es_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 _let_9))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_3 _let_11))) (let ((_let_14 (_let_8 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_1 _let_14)) F0_2E0)) _let_6))) _let_5))) _let_7)) (_let_12 ((c_2Epair_2E_2C_2E2 _let_7) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) F1_2E0)) _let_7))) _let_6))) _let_5)))))))))))))))))))) (forall ((V0xs_2E0 u) (V1xss_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1xss_2E0))) (let ((_let_7 ((s A_27a) V2e_2E0))) (let ((_let_8 (_let_3 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_2))) (let ((_let_11 (_let_10 V0xs_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Eset__relation_2Eper_2E2 _let_11) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Eset__relation_2Eper_2E2 (_let_10 ((c_2Epred__set_2EDELETE_2E2 _let_11) _let_7))) (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F0_2E0)) _let_7))) _let_6))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_2) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 (((c_2Eset__relation_2Enth__min_2E3 _let_5) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) c_2Eset__relation_2Enth__min_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V6z_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V1tc_27_2E0)) (_let_2 V4x_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) (_let_2 V5y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 (_let_1 ((c_2Eset__relation_2Emaximal__elements_2E2 _let_2) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (exists ((V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_7 ((c_2Eset__relation_2Emaximal__elements_2E2 (_let_7 V0s_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V2x_2E0)) _let_5))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (= (_let_2 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V0R_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_3 _let_9))) (let ((_let_12 (_let_5 _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_12)) F0_2E0)) _let_7))) _let_2))) _let_1)) (_let_10 ((c_2Epair_2E_2C_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1)))))))))))))))))) (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 (_let_1 _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_5))) (let ((_let_9 (s (_let_8 tyop_2Emin_2Ebool)))) (= (_let_9 (c_2Eset__relation_2Erel__to__reln_2E1 _let_4)) (_let_9 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_8 _let_6)) (c_2Epair_2EUNCURRY_2E1 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2l_27 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V1x_2E0)))) V2l_27) (mono_2Ec_2Enum_2ESUC V2l_27)))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) F0_2E0)) (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Ewf__decoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0b1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_5))) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0lo_2E0 u) (V1X_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1X_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0lo_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Elinear__order_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3)))) _let_2)))))) (= (_let_307 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Estring_2Echar)) (_let_307 c_2Elist_2EFLAT_2E0)) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1y_2E0 u) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F1_2E0)) ((s A_27a) V1y_2E0)))) ((s _let_1) V0r_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27b) V2x_2E0)) ((s A_27a) V1y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))))))) (=> (forall ((V0r_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0r_2E0))) (let ((_let_3 ((s A_27a) V1y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_6 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_4 _let_9)) F0_2E0)) _let_2))) _let_3)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_3))) _let_2))))))))))))))) (forall ((V0r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0r2_2E0 u) (V1r1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun (_let_1 A_27c)) tyop_2Emin_2Ebool)) V1r1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool)) V0r2_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 (s ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool)))) (= (_let_7 ((c_2Eset__relation_2Ercomp_2E2 _let_2) _let_5)) (_let_7 (c_2Eset__relation_2Erel__to__reln_2E1 ((s (_let_4 _let_6)) ((c_2Erelation_2EO_2E2 ((s (_let_3 _let_6)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_5))) ((s (_let_4 (_let_3 tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2x_2E0))) (let ((_let_5 (_let_3 V3y_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_7 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) (_let_7 ((c_2Eset__relation_2Emaximal__elements_2E2 _let_8) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (((tyop_2Einftree_2Einftree A_27c) A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27c) A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Einftree_2Efrom__inftree_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Einftree_2Efrom__inftree_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a))) (= (_let_1 V2x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V2x) (V1a V2x))))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b))) (= (_let_1 V5x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V0b V5x)) (V1a V5x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V5x))))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b))) (= (_let_1 V6x) (and (or ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V6x) (V1a V6x)) (not (V0b V6x)))))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b))) (= (=> (not (V0b V7x)) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V7x) (V1a V7x))) (_let_1 V7x)))) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b))) (= (_let_1 V8x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V0b V8x)) (V1a V8x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V8x))))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b))) (= (_let_1 V9x) (and (not (V0b V9x)) (or (V1a V9x) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V9x)))))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a))) (= (_let_1 V11x) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT _let_1) V11x) (V1a V11x))))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b))) (= (or (V0b V12x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT _let_1) V12x) (V1a V12x))) (_let_1 V12x)))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b))) (let ((_let_2 (V0b V13x))) (= (or (and (not _let_2) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT _let_1) V13x)) (and (V1a V13x) _let_2)) (_let_1 V13x))))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b))) (= (and (not (V0b V14x)) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT _let_1) V14x) (V1a V14x))) (_let_1 V14x)))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b))) (= (or (and (V1a V15x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT _let_1) V15x)) (V0b V15x)) (_let_1 V15x)))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b))) (= (and (not (V0b V17x)) (or (V1a V17x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT _let_1) V17x))) (_let_1 V17x)))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0b V16x))) (let ((_let_2 ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b))) (= (_let_2 V16x) (or (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT _let_2) V16x) (not _let_1)) (and (V1a V16x) _let_1)))))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a))) (= (_let_1 V10x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT _let_1) V10x) (V1a V10x))))) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b))) (= (=> (not (V0b V4x)) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V4x) (V1a V4x))) (_let_1 V4x)))) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a))) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V3x) (V1a V3x)) (_let_1 V3x)))))) (forall ((A_27a d) (V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1r_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V0xs_2E0))) (= (_let_5 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_6) (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 _let_1)) c_2Epair_2ESWAP_2E0)) _let_4)))) (_let_5 ((c_2Eset__relation_2Emaximal__elements_2E2 _let_6) _let_4)))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) (_let_4 V2y_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))) (or (exists ((V3z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3z_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V2y_2E0)))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) _let_5))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))))))))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Etransitive_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Epartial__order_2E2 _let_3) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eantisym_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Ereflexive_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1m_2E0 u) (V2n_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1m_2E0))) (let ((_let_3 (_let_1 V3p_2E0))) (let ((_let_4 (_let_1 V2n_2E0))) (let ((_let_5 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_5 (_let_1 ((_let_5 _let_2) _let_4))) _let_3)) (_let_1 ((_let_5 (_let_1 ((_let_5 _let_4) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Etransitive_2E1 (_let_1 (c_2Eset__relation_2Etc_2E1 (_let_1 V0r_2E0)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V0R_2E0))) (= (_let_3 ((c_2Epred__set_2EREL__RESTRICT_2E2 _let_4) ((s _let_2) c_2Epred__set_2EUNIV_2E0))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3s2_2E0 u) (V4x_2E0 u) (V1r2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F1_2E0)) ((s _let_2) V3s2_2E0)))) ((s A_27b) V4x_2E0)))) ((s _let_1) V1r2_2E0)))) (exists ((V5y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((s A_27c) V5y_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V3s2_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27b) V4x_2E0)) _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r2_2E0))))))))))))))) (=> (forall ((V3s2_2E0 u) (V1r2_2E0 u) (V4x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r2_2E0))) (let ((_let_4 ((s A_27b) V4x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V3s2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (tyop_2Emin_2Efun _let_5))) (let ((_let_12 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_9 _let_12))) (let ((_let_15 (_let_7 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_11 _let_15)) F0_2E0)) _let_6))) _let_3))) _let_4)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_6))) _let_4))) _let_3))))))))))))))))))))) (forall ((V0r1_2E0 u) (V1r2_2E0 u) (V2s1_2E0 u) (V3s2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V3s2_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V1r2_2E0))) (let ((_let_6 (tyop_2Epair_2Eprod A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun (_let_6 A_27b)) tyop_2Emin_2Ebool)) V0r1_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (s (_let_9 tyop_2Emin_2Ebool)))) (let ((_let_11 (_let_10 V2s1_2E0))) (let ((_let_12 (_let_9 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_13 ((tyop_2Emin_2Efun _let_4) _let_12))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 (_let_10 (c_2Epred__set_2EGSPEC_2E1 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_13)) F0_2E0)) _let_2))) _let_5))))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_7) _let_11)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Efinite__prefixes_2E2 ((s ((tyop_2Emin_2Efun (_let_6 A_27c)) tyop_2Emin_2Ebool)) ((c_2Eset__relation_2Ercomp_2E2 _let_7) _let_5))) _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V1r_2E0 u) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F1_2E0)) _let_4))) _let_2))) ((s _let_6) V0s_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erange_2E1 _let_2))))) (forall ((V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((s A_27b) V3y_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_2) ((s A_27a) V2x_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0)))))))))))))))))))) (=> (forall ((V1r_2E0 u) (V0s_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1r_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_10 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_8 _let_14)) F0_2E0)) _let_4))) _let_2))) _let_5)) (_let_12 ((c_2Epair_2E_2C_2E2 _let_5) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_5))) _let_4))) _let_2)))))))))))))))))))) (forall ((V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1r_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s (_let_5 tyop_2Emin_2Ebool)))) (= (_let_8 ((c_2Eset__relation_2Eupper__bounds_2E2 _let_2) _let_4)) (_let_8 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_2))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2EDELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s A_27a))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_1)))) (= (_let_2 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)) (_let_2 (c_2Elist_2ELAST_2E1 _let_1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUBLIST_2E2 (_let_1 V0l1_2E0)) (_let_1 V1l2_2E0)))) (exists ((V2l_2E0 u) (V3l_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l_2E0)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1l2_2E0)) (_let_1 V3l_27_2E0))))))))))) (forall ((A_27a d) (V0r1_2E0 u) (V1r2_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r2_2E0))) (let ((_let_4 (_let_2 V0r1_2E0))) (= (_let_2 ((c_2Eset__relation_2Errestrict_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))) _let_1)) (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_4) _let_1))) (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) _let_1)))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2Erelation_2ERUNION_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERUNION_2E0)) _let_5))) _let_4))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1r_27_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V0r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_2E0))) (let ((_let_4 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) (_let_1 V0s_2E0))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Elinear__order_2E2 _let_3) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_4))) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_4)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Elinear__order_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 tyop_2Emin_2Ebool))))) (= (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)) (_let_1 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_4 (c_2Erelation_2ETC_2E1 (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Eset__relation_2Estrict_2E0)) _let_3))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Epartial__order_2E2 _let_1) ((s _let_3) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2e_2E0 u) (V0r_2E0 u) (V3e_27_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0r_2E0))) (let ((_let_5 ((s A_27b) V2e_2E0))) (let ((_let_6 ((s A_27a) V3e_27_2E0))) (let ((_let_7 (c_2Epair_2E_2C_2E2 _let_6))) (let ((_let_8 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_11)) F0_2E0)) _let_5))) _let_4))) _let_6)) (_let_9 (_let_7 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_2) (_let_7 _let_5))) _let_4))))))))))))))))) (forall ((V0r_2E0 u) (V1s_2E0 u)) (= (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s A_27b) V2e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_7 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Epred__set_2EFINITE_2E1 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F0_2E0)) _let_3))) ((s _let_2) V0r_2E0)))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Efinite__prefixes_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) V0r_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_2E0)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0s_2E0 u) (V1s_27_2E0 u) (V2t_2E0 u) (V3t_27_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)) V3t_27_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_27_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_3))) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27d)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (V0r_27_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V1r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_4))) (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0r1_2E0 u) (V1r2_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V2x_2E0)) (_let_3 V3y_2E0)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 V0r1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 V1r2_2E0))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V4x_2E0)) (_let_3 V5y_2E0)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V1r2_2E0))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V3mins_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V3mins_2E0))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) F0_2E0)) _let_4)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 _let_4))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_4))))) (_let_2 c_2Eoption_2ENONE_2E0))))))))) (forall ((V0r_27_2E0 u) (V1s_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0r_27_2E0))) (let ((_let_4 (_let_2 V2r_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1s_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (= (_let_9 ((c_2Eset__relation_2Eget__min_2E2 _let_3) ((s ((tyop_2Epair_2Eprod _let_5) _let_1)) ((c_2Epair_2E_2C_2E2 _let_7) _let_4)))) (_let_9 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) (_let_6 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_6 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_7) _let_4))) _let_3))))))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Euniv__reln_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Euniv__reln_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0l1) V1l2) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) (and (= V0l1 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) (= V1l2 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Ebag_2EBAG__DIFF_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ebag_2EBAG__DIFF_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1r_2E0))) (let ((_let_6 (s (_let_1 _let_2)))) (= (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_3)) (_let_4 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_6 ((c_2Epred__set_2EREL__RESTRICT_2E2 (_let_6 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1s_2E0 u) (V2r1_2E0 u) (V3r2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3r2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Eset__relation_2Emaximal__elements_2E2 (_let_3 V1s_2E0)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2r1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_7) _let_2))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 _let_7))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 _let_2))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2s_27_2E0))) (let ((_let_7 (_let_5 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_6) _let_4)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 _let_6) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7)))) (= _let_3 _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1xss_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1xss_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_1) V0xs_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Eper_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELUNFOLD_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EquantHeuristics_2EIS__REMOVABLE__QUANT__FUN_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (= (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V2x_2E0))))))) (forall ((V3x_27_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V3x_27_2E0)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakLinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakLinearOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Eacyclic_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V6z_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V1tc_27_2E0)) _let_3))) (_let_2 V5y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_2 V4x_2E0)) _let_3))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0)))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0f_2E0))) (let ((_let_4 (tyop_2Elist_2Elist _let_2))) (let ((_let_5 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b)))) (let ((_let_7 (s (_let_5 _let_6)))) (= (_let_7 (c_2Estate__transformer_2EmapM_2E1 _let_3)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Estate__transformer_2Esequence_2E0)) ((s (_let_5 _let_4)) (c_2Elist_2EMAP_2E1 _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 tyop_2Emin_2Ebool))))) (= (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2)) (_let_1 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_4 (c_2Erelation_2ESTRORD_2E1 (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V2x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) _let_3))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_7) _let_1)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x1_2E0 u) (V0xs_2E0 u) (V2x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0xs_2E0))) (let ((_let_7 (_let_1 V1x1_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_7) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_2) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F1_2E0)) _let_7))) _let_6))) _let_2)))))))))))))) (=> (forall ((V0xs_2E0 u) (V1x1_2E0 u) (V2x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0xs_2E0))) (let ((_let_7 (_let_1 V1x1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 _let_4))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_10) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_3 _let_11))) (let ((_let_14 (_let_3 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_8 _let_14)) F0_2E0)) _let_6))) _let_7))) _let_2)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_7) _let_2))) ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_3 _let_9)) F1_2E0)) _let_7))) _let_6))) _let_2)))))))))))))))))))) (forall ((V0xs_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0xs_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 (_let_1 _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (s (_let_7 tyop_2Emin_2Ebool)))) (= (_let_8 (c_2Eset__relation_2Euniv__reln_2E1 _let_3)) (_let_8 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_7 _let_5)) (c_2Epair_2EUNCURRY_2E1 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_3))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0i mono_2Etyop_2Enum_2Enum) (V1v_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0i)))) (let ((_let_3 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V1v_2E0))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_4 ((c_2Elist_2EEL_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_3)))) (_let_4 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (= (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) _let_1)))) (_let_2 ((c_2Eset__relation_2Errestrict_2E2 (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3))) _let_1))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 (c_2Eset__relation_2Emaximal__elements_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Erange_2E1 _let_2))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_2))) _let_4)))) (= (_let_3 (_let_5 (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)))) (_let_3 (_let_5 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (= (= (_let_1 V0s_2E0) (_let_1 V1t_2E0)) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2x_2E0)) ((s A_27b) V3y_2E0)))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V1t_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1x_2E0 u) (V2x_27_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 ((s A_27b) V2x_27_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Eset__relation_2Ereln__to__rel_2E3 _let_2) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0a_2E0 u) (V1f_2E0 u) (V2f1_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 ((((c_2Efcp_2Ebit1__CASE_2E4 ((s (tyop_2Efcp_2Ebit1 A_27a)) (c_2Efcp_2EBIT1A_2E1 _let_1))) _let_3) (_let_2 V2f1_2E0)) (_let_4 V3v_2E0))) (_let_4 ((app_2E2 _let_3) _let_1)))))))) (forall ((V8f_2E0 u) (V9f1_2E0 u) (V10v_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V10v_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (= (_let_1 ((((c_2Efcp_2Ebit1__CASE_2E4 ((s (tyop_2Efcp_2Ebit1 A_27a)) c_2Efcp_2EBIT1C_2E0)) (_let_3 V8f_2E0)) (_let_3 V9f1_2E0)) _let_2)) _let_2))))) (forall ((V4a_2E0 u) (V5f_2E0 u) (V6f1_2E0 u) (V7v_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V6f1_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 ((((c_2Efcp_2Ebit1__CASE_2E4 ((s (tyop_2Efcp_2Ebit1 A_27a)) (c_2Efcp_2EBIT1B_2E1 _let_1))) (_let_2 V5f_2E0)) _let_3) (_let_4 V7v_2E0))) (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1r_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V6y_2E0))) (let ((_let_6 (_let_4 V5x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (app_2E2 _let_9))) (let ((_let_11 (s A_27b))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_13 ((tyop_2Epair_2Eprod _let_12) tyop_2Emin_2Ebool))) (let ((_let_14 (s _let_13))) (let ((_let_15 (_let_7 _let_13))) (let ((_let_16 (_let_7 _let_15))) (let ((_let_17 ((tyop_2Emin_2Efun _let_2) _let_16))) (= (_let_14 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_17)) F0_2E0)) _let_9))) _let_3))) _let_6))) _let_5)) (_let_14 ((c_2Epair_2E_2C_2E2 ((s _let_12) ((c_2Epair_2E_2C_2E2 (_let_11 (_let_10 _let_6))) (_let_11 (_let_10 _let_5))))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) _let_3))))))))))))))))))))))) (forall ((V0f_2E0 u) (V1r_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 (_let_1 A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1r_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 (_let_1 _let_9)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Eset__relation_2Efinite__prefixes_2E2 ((s ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s (_let_5 _let_9)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_11)) F0_2E0)) _let_4))) _let_7))))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2r_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27b) V0y_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_5))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erange_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Edomain_2E1 _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Eirreflexive_2E2 _let_1) ((s _let_3) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27d)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_5 (s (_let_1 _let_2)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Eirreflexive_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Eirreflexive_2E1 (_let_5 ((c_2Epred__set_2EREL__RESTRICT_2E2 (_let_5 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_4))) _let_3))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) _let_1))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Efinite_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) c_2Ewellorder_2EwZERO_2E0))))) (forall ((V0p (-> Bool Bool))) ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Emin_2Ebool V0p) mono_2Ec_2EEncode_2Eencode__bool)) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V0f_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 ((s A_27a) V4x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0f_2E0))) (let ((_let_9 (s _let_4))) (let ((_let_10 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_11 ((s _let_10) V2P_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_6))) (= (_let_1 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_12)) F0_2E0)) _let_11))) _let_8))) _let_3))) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_11) _let_3))) (_let_1 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2))) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2P_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27b) A_27b)))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0f_2E0))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V2P_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_6) _let_6))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_4) (_let_1 ((c_2Elist_2EFILTER_2E2 _let_10) _let_2)))) (_let_3 (((c_2Elist_2EFOLDR_2E3 (_let_7 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_11)) F0_2E0)) _let_10))) _let_8))) _let_4) _let_2))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_5 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_5 (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_2) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (exists ((V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V3y_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) (_let_5 V2x_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) (_let_4 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_4 V0s_2E0)) _let_3))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V1x_2E0)) ((s A_27b) V2y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F1_2E0)) ((s A_27a) V1x_2E0)))) ((s _let_1) V0r_2E0)))))))) (=> (forall ((V0r_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0r_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_7 _let_8))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_5 _let_10)) F0_2E0)) _let_3))) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F1_2E0)) _let_4))) _let_3)))))))))))))))) (forall ((V0r_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 (s (_let_4 tyop_2Emin_2Ebool)))) (= (_let_6 (c_2Eset__relation_2Edomain_2E1 _let_3)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Epartial__order_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_2) _let_1)))) (exists ((V2r_27_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2r_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 V0r_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_3) _let_1)))))))))))))) (forall ((F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4t mono_2Etyop_2Enum_2Enum)) (= (F7 V4t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V10t)) ((F3 V1a) V10t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V8t) (and (not (V0b V8t)) (not (V1a V8t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V12t) (and (not (V1a V12t)) (V0b V12t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V16t)) (V1a V16t)) (((F6 V1a) V0b) V16t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V14t) (V1a V14t)) (((F5 V1a) V0b) V14t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F0 V1a)) F7) V2x)))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE (F3 V1a)) V0b) V9x)) (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V9x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V13x) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F5 V1a) V0b)) V13x)))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V15x) (not (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F6 V1a) V0b)) V15x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V11x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F4 V1a) V0b)) V11x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V7x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0b) ((F2 V1a) V0b)) V7x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V5x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) F1) V5x)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eset__relation_2Enum__order_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eset__relation_2Enum__order_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_7))) _let_5)))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27f) A_27g)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27e)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27f) ((tyop_2Emin_2Efun A_27g) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (_let_1 _let_5)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Estrict__linear__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)) _let_2)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Emaximal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum V0l)) (mono_2Ec_2Elist_2ESUM V0l))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0r1_2E0 u) (V3y_2E0 u) (V1r2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (exists ((V4z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 ((s A_27c) V4z_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27c) A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_2) ((s A_27b) V3y_2E0)))) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V1r2_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2x_2E0)) _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r1_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F1_2E0)) ((s A_27a) V2x_2E0)))) ((s _let_2) V0r1_2E0)))) ((s A_27b) V3y_2E0)))) ((s _let_1) V1r2_2E0))))))))))) (=> (forall ((V0r1_2E0 u) (V1r2_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1r2_2E0))) (let ((_let_3 ((s A_27b) V3y_2E0))) (let ((_let_4 (tyop_2Epair_2Eprod A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0r1_2E0))) (let ((_let_7 ((s A_27a) V2x_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun A_27b))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun A_27a))) (let ((_let_15 (_let_4 A_27b))) (let ((_let_16 ((tyop_2Epair_2Eprod _let_15) tyop_2Emin_2Ebool))) (let ((_let_17 (s _let_16))) (let ((_let_18 (_let_10 _let_16))) (let ((_let_19 (_let_14 _let_18))) (let ((_let_20 (_let_8 _let_19))) (= (_let_17 ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s (_let_12 _let_20)) F0_2E0)) _let_6))) _let_2))) _let_7))) _let_3)) (_let_17 ((c_2Epair_2E_2C_2E2 ((s _let_15) ((c_2Epair_2E_2C_2E2 _let_7) _let_3))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_14 _let_13)) F1_2E0)) _let_7))) _let_6))) _let_3))) _let_2)))))))))))))))))))))))))) (forall ((V0r1_2E0 u) (V1r2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1r2_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0r1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_7)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (s (_let_10 tyop_2Emin_2Ebool)))) (= (_let_11 ((c_2Eset__relation_2Ercomp_2E2 _let_5) _let_2)) (_let_11 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_10 _let_7)) (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_2)))))))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_7 (c_2Ebool_2EIN_2E2 _let_1))) (=> (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_7 (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_7 (_let_4 (c_2Eset__relation_2Erange_2E1 _let_6)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) _let_1))) _let_1)))))))))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_2) (_let_1 V4y_2E0)))) ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V1tc_27_2E0)) (_let_1 V3x_2E0)))) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V3x_2E0)))) (_let_1 V4y_2E0)))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V10t)) (V1a V10t)) (((F8 V1a) V0b) V10t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V9t)) (V1a V9t)) (((F7 V1a) V0b) V9t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V7t) (not (V0b V7t))) (((F5 V1a) V0b) V7t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V6t) (not (V0b V6t))) (((F4 V1a) V0b) V6t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V4t) (and (not (V0b V4t)) (V1a V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= (((F11 V1a) V0b) V13t) (and (V1a V13t) (not (V0b V13t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F10 V1a) V0b) V12t) (and (not (V0b V12t)) (V1a V12t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V3t)) (V1a V3t)) (((F1 V1a) V0b) V3t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (((F9 V1a) V0b) V11t) (and (V0b V11t) (V1a V11t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (((F6 V1a) V0b) V8t) (and (V0b V8t) (V1a V8t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (((F3 V1a) V0b) V5t) (and (V0b V5t) (V1a V5t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V2t) (and (V0b V2t) (V1a V2t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EWHEN ((F0 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESWHEN ((F3 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F4 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE ((F5 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN ((F9 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL ((F10 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE ((F11 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F8 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL ((F7 V1a) V0b)) V0b)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b) ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN ((F6 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F2 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EUNTIL ((F1 V1a) V0b)) V0b))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (forall ((V1r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Eacyclic_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Emaximal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((s A_27b) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Erich__list_2ESCANL_2E3 _let_6) _let_3) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Erich__list_2ESCANL_2E0)) _let_6))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (= (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Elinear__order_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V4p_27_2E0 u) (V5g_27_2E0 u) (V6r_27_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V6r_27_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 _let_7))) (let ((_let_9 ((s _let_8) V5g_27_2E0))) (let ((_let_10 (_let_2 A_27a))) (let ((_let_11 ((s _let_10) V4p_27_2E0))) (let ((_let_12 (_let_4 (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_4 _let_12))) (let ((_let_15 ((tyop_2Emin_2Efun _let_5) _let_14))) (let ((_let_16 ((tyop_2Emin_2Efun _let_8) _let_15))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_16)) F0_2E0)) _let_11))) _let_9))) _let_6))) _let_1)) (_let_13 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_11) ((s _let_7) ((app_2E2 _let_9) _let_1))) ((s _let_3) ((app_2E2 _let_6) _let_1)))))))))))))))))))))) (=> (forall ((V6r_27_2E0 u) (V4p_27_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27c) V10x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V4p_27_2E0))) (let ((_let_5 (_let_2 A_27d))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_5))) (let ((_let_7 ((s _let_6) V6r_27_2E0))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s A_27d))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (_let_9 ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F3_2E0)) _let_7))) _let_4))) _let_1)) (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) ((s A_27a) ((app_2E2 _let_4) _let_1))))) _let_1)))))))))))))) (=> (forall ((V3g_2E0 u) (V4p_27_2E0 u) (V5g_27_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27c) V9x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V5g_27_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) V4p_27_2E0))) (let ((_let_9 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V3g_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_11))) (let ((_let_13 (s _let_3))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (let ((_let_15 ((s A_27a) ((app_2E2 _let_8) _let_1)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 _let_10) _let_15))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 (_let_13 ((app_2E2 _let_6) _let_15))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_12)) F2_2E0)) _let_10))) _let_8))) _let_6))) _let_1)))))))))))))))))))) (=> (forall ((V0p_2E0 u) (V4p_27_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27c) V8x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V4p_27_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) V0p_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_2 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_6))) _let_4))) _let_1)) (_let_7 ((app_2E2 _let_6) ((s A_27a) ((app_2E2 _let_4) _let_1))))))))))))))) (forall ((V0p_2E0 u)) (=> (forall ((V1x1_2E0 u) (V2x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x2_2E0))) (let ((_let_3 (_let_1 V1x1_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0p_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V3g_2E0 u) (V4p_27_2E0 u) (V5g_27_2E0 u) (V6r_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) V4p_27_2E0))) (let ((_let_4 (_let_1 A_27d))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V6r_27_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_4))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_5 _let_11))) (let ((_let_13 ((s _let_12) V5g_27_2E0))) (let ((_let_14 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_15 ((s _let_14) V3g_2E0))) (let ((_let_16 (tyop_2Emin_2Efun _let_12))) (let ((_let_17 (_let_16 _let_11))) (let ((_let_18 (_let_8 _let_17))) (let ((_let_19 (_let_5 A_27b))) (let ((_let_20 ((s _let_19) V0p_2E0))) (let ((_let_21 (_let_1 A_27b))) (let ((_let_22 (_let_8 _let_21))) (let ((_let_23 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_24 (s ((tyop_2Emin_2Efun A_27b) _let_23)))) (let ((_let_25 (_let_5 (_let_5 _let_23)))) (let ((_let_26 (_let_10 _let_25))) (let ((_let_27 (_let_16 _let_26))) (= (_let_24 (((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E3 _let_20) _let_15) ((s _let_25) ((app_2E2 ((s _let_26) ((app_2E2 ((s _let_27) ((app_2E2 ((s (_let_8 _let_27)) F0_2E0)) _let_3))) _let_13))) _let_7)))) (_let_24 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s _let_21) ((app_2E2 ((s _let_22) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_19) _let_22)) F1_2E0)) _let_20))) _let_3))) ((s _let_11) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_14) _let_18)) F2_2E0)) _let_15))) _let_3))) _let_13))) ((s _let_4) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F3_2E0)) _let_7))) _let_3)))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (_let_3 (c_2Eset__relation_2Estrict_2E1 _let_4)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Epartial__order_2E2 _let_4) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Eantisym_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Eset__relation_2Etransitive_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Erange_2E1 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_5))) _let_2)))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (= (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V1x_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Eacyclic_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1b_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_3 V2x_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_3 V3y_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2))))))))))))))) (forall ((V5x_2E0 u) (V6a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V6a_2E0))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 _let_4)) V0f_2E0))) (let ((_let_7 (s (_let_5 tyop_2Enum_2Enum)))) (let ((_let_8 (_let_7 V1b_2E0))) (let ((_let_9 (c_2Ebag_2EITBAG_2E3 _let_6))) (= (_let_1 ((_let_9 (_let_7 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) _let_8))) _let_2)) (_let_1 ((_let_9 _let_8) (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 _let_6) _let_3))) _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Equotient_2Erespects_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) c_2Equotient_2Erespects_2E0)) _let_6))) _let_2)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V7min_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7min_2E0))) (= (= _let_3 (_let_2 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F1_2E0)) _let_3)))))))) (=> (forall ((V4r_27_2E0 u) (V3s_2E0 u) (V5r_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7min_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5r_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V7min_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V3s_2E0))) (let ((_let_11 (_let_3 V4r_27_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_5))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_2))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 ((tyop_2Emin_2Efun _let_8) _let_16))) (= (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_15 _let_17)) F0_2E0)) _let_11))) _let_10))) _let_4))) _let_1))) _let_7)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_12 tyop_2Emin_2Ebool)) F1_2E0)) _let_7))) (_let_6 c_2Eoption_2ENONE_2E0)) (_let_6 (((c_2Eset__relation_2Enth__min_2E3 _let_11) ((s ((tyop_2Epair_2Eprod _let_8) _let_2)) ((c_2Epair_2E_2C_2E2 (_let_9 ((c_2Epred__set_2EDELETE_2E2 _let_10) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_7))))) _let_4))) _let_1))))))))))))))))))))))) (and (forall ((V0s_2E0 u) (V1r_27_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 ((s _let_3) V0s_2E0)) (_let_2 V2r_2E0))))) (let ((_let_5 (_let_2 V1r_27_2E0))) (let ((_let_6 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_6 (((c_2Eset__relation_2Enth__min_2E3 _let_5) _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_6 ((c_2Eset__relation_2Eget__min_2E2 _let_5) _let_4)))))))))) (forall ((V3s_2E0 u) (V4r_27_2E0 u) (V5r_2E0 u) (V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5r_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V3s_2E0))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))) (let ((_let_7 (_let_2 V4r_27_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (let ((_let_10 (s tyop_2Enum_2Enum))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_8))) (let ((_let_12 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_11))) (let ((_let_13 (tyop_2Emin_2Efun _let_1))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((tyop_2Emin_2Efun _let_4) _let_14))) (= (_let_9 (((c_2Eset__relation_2Enth__min_2E3 _let_7) _let_6) (_let_10 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V6n))))) (_let_9 ((c_2Ebool_2ELET_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_13 _let_15)) F0_2E0)) _let_7))) _let_5))) _let_3))) (_let_10 (i_mono_2Etyop_2Enum_2Enum V6n))))) (_let_9 ((c_2Eset__relation_2Eget__min_2E2 _let_7) _let_6))))))))))))))))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 ((s (_let_1 _let_2)) (c_2Eset__relation_2Ereln__to__rel_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V2r_2E0)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s _let_2) V1s_2E0)))) (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V3y_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2r_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_3) (_let_8 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_8 V1s_2E0)) _let_6))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_5 (c_2Eset__relation_2Etc_2E1 _let_6))))) (= _let_3 _let_2)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3))) _let_2))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2x_2E0))) (let ((_let_5 (_let_3 V3y_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_4) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_8)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eantisym_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1s_2E0 u) (V2r1_2E0 u) (V3r2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3r2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Eset__relation_2Eminimal__elements_2E2 (_let_3 V1s_2E0)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2r1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_7) _let_2))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 _let_7))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (_let_4 _let_2))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0r_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V3y_2E0))) (let ((_let_9 (_let_7 V2x_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_9) _let_8))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Ebool_2EIN_2E2 _let_9) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Ebool_2EIN_2E2 _let_8) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_1 _let_12)) F1_2E0)) _let_9))) _let_8))) _let_6))) _let_3)))))))))))))))))) (=> (forall ((V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0r_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V3y_2E0))) (let ((_let_9 (_let_7 V2x_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 tyop_2Emin_2Ebool))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_1 _let_13))) (let ((_let_15 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_16 (s _let_15))) (let ((_let_17 (_let_1 _let_15))) (let ((_let_18 (_let_1 _let_17))) (let ((_let_19 (_let_10 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_12 _let_19)) F0_2E0)) _let_6))) _let_3))) _let_9))) _let_8)) (_let_16 ((c_2Epair_2E_2C_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_9) _let_8))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_1 _let_14)) F1_2E0)) _let_9))) _let_8))) _let_6))) _let_3))))))))))))))))))))))))) (forall ((V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0r_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 (_let_1 _let_9)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_7 ((c_2Eset__relation_2Errestrict_2E2 _let_8) _let_3)) (_let_7 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_5 _let_9)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_8))) _let_3)))))))))))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Etransitive_2E1 _let_2))) (= (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)) _let_2))))) (forall ((A_27a d) (A_27b d) (V0r2_2E0 u) (V1r1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_1 V1r1_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_4)) (_let_3 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Eminimal__elements_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u) (V2x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_27_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Eset__relation_2ERRUNIV_2E3 _let_4) _let_3) _let_2)))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongLinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongLinearOrder_2E0)) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2lo_2E0 u) (V3X_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3X_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V0y_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V2lo_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_7) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_3) _let_5))) _let_7))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1)))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Epred__set_2EREL__RESTRICT_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EREL__RESTRICT_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V7min_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7min_2E0))) (= (= _let_3 (_let_2 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F3_2E0)) _let_3)))))))) (=> (forall ((V4r_27_2E0 u) (V3s_2E0 u) (V5r_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7min_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5r_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V7min_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V3s_2E0))) (let ((_let_11 (_let_3 V4r_27_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_5))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_2))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 ((tyop_2Emin_2Efun _let_8) _let_16))) (= (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_15 _let_17)) F0_2E0)) _let_11))) _let_10))) _let_4))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V6n))))) _let_7)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_12 tyop_2Emin_2Ebool)) F3_2E0)) _let_7))) (_let_6 c_2Eoption_2ENONE_2E0)) (_let_6 (((c_2Eset__relation_2Enth__min_2E3 _let_11) ((s ((tyop_2Epair_2Eprod _let_8) _let_2)) ((c_2Epair_2E_2C_2E2 (_let_9 ((c_2Epred__set_2EDELETE_2E2 _let_10) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_7))))) _let_4))) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))))))))))))) (=> (forall ((V12min_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V12min_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (= _let_3 (_let_2 c_2Eoption_2ENONE_2E0))))))) (=> (forall ((V9r_27_2E0 u) (V8s_2E0 u) (V10r_2E0 u) (V11n mono_2Etyop_2Enum_2Enum) (V12min_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V10r_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V12min_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V8s_2E0))) (let ((_let_11 (_let_3 V9r_27_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_5))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_2))) (let ((_let_16 (_let_15 _let_14))) (let ((_let_17 ((tyop_2Emin_2Efun _let_8) _let_16))) (= (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_15 _let_17)) F1_2E0)) _let_11))) _let_10))) _let_4))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V11n))))) _let_7)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_12 tyop_2Emin_2Ebool)) F2_2E0)) _let_7))) (_let_6 c_2Eoption_2ENONE_2E0)) (_let_6 (((c_2Eset__relation_2Enth__min_2E3 _let_11) ((s ((tyop_2Epair_2Eprod _let_8) _let_2)) ((c_2Epair_2E_2C_2E2 (_let_9 ((c_2Epred__set_2EDELETE_2E2 _let_10) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_7))))) _let_4))) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V11n))))))))))))))))))))))))))) (and (forall ((V8s_2E0 u) (V9r_27_2E0 u) (V10r_2E0 u) (V11n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V10r_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V8s_2E0))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))) (let ((_let_7 (_let_2 V9r_27_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (let ((_let_10 (s tyop_2Enum_2Enum))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_8))) (let ((_let_12 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_11))) (let ((_let_13 (tyop_2Emin_2Efun _let_1))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((tyop_2Emin_2Efun _let_4) _let_14))) (= (_let_9 (((c_2Eset__relation_2Enth__min_2E3 _let_7) _let_6) (_let_10 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V11n)))))) (_let_9 ((c_2Ebool_2ELET_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_13 _let_15)) F1_2E0)) _let_7))) _let_5))) _let_3))) (_let_10 (i_mono_2Etyop_2Enum_2Enum V11n))))) (_let_9 ((c_2Eset__relation_2Eget__min_2E2 _let_7) _let_6))))))))))))))))))))) (forall ((V3s_2E0 u) (V4r_27_2E0 u) (V5r_2E0 u) (V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5r_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V3s_2E0))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))) (let ((_let_7 (_let_2 V4r_27_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (let ((_let_10 (s tyop_2Enum_2Enum))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_8))) (let ((_let_12 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_11))) (let ((_let_13 (tyop_2Emin_2Efun _let_1))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((tyop_2Emin_2Efun _let_4) _let_14))) (= (_let_9 (((c_2Eset__relation_2Enth__min_2E3 _let_7) _let_6) (_let_10 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n)))))) (_let_9 ((c_2Ebool_2ELET_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_13 _let_15)) F0_2E0)) _let_7))) _let_5))) _let_3))) (_let_10 (i_mono_2Etyop_2Enum_2Enum V6n))))) (_let_9 ((c_2Eset__relation_2Eget__min_2E2 _let_7) _let_6))))))))))))))))))))) (forall ((V0s_2E0 u) (V1r_27_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 ((s _let_3) V0s_2E0)) (_let_2 V2r_2E0))))) (let ((_let_5 (_let_2 V1r_27_2E0))) (let ((_let_6 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_6 (((c_2Eset__relation_2Enth__min_2E3 _let_5) _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_6 ((c_2Eset__relation_2Eget__min_2E2 _let_5) _let_4)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eantisym_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Eantisym_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r1_2E0 u) (V1r2_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r1_2E0))) (let ((_let_3 (_let_1 V1r2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_5 (c_2Eset__relation_2Erange_2E1 _let_3))))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_2) _let_6)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_7))) _let_5)))))))))))) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_5 ((s A_27a) V0h_2E0))) (let ((_let_6 (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_3)))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (and (= (_let_7 (c_2Ellist_2ELHD_2E1 _let_6)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_5))) (= (_let_4 (c_2Ellist_2ELTL_2E1 _let_6)) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) (_let_4 V2y_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (exists ((V3z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3z_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V2y_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 (_let_4 V1x_2E0)) _let_5))) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))))))))))) (= (_let_304 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_304 c_2Epred__set_2EGSPEC_2E0)) (forall ((A_27a d) (V0x_2E0 u) (V1r_2E0 u) (V2e_2E0 u) (V3e_27_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 V2e_2E0)) (_let_4 V3e_27_2E0)))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Epartial__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Epartial__order_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (forall ((V1r_27_2E0 u) (V2s_2E0 u) (V3r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) _let_5))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) V0P_2E0)) (_let_2 V1r_27_2E0)))) ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s _let_3) V2s_2E0)) (_let_2 V3r_2E0)))))) mono_2Ec_2Enum_2E0)))))))) (forall ((V4r_27_2E0 u) (V5s_2E0 u) (V6r_2E0 u) (V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) _let_5))) (=> (forall ((V8min_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6r_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (_let_4 V8min_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V5s_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_6) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_2 V4r_27_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun _let_9) _let_12))) (=> (and (not (= _let_5 (_let_4 c_2Eoption_2ENONE_2E0))) (= _let_5 (_let_4 ((c_2Eset__relation_2Eget__min_2E2 _let_11) (_let_10 ((c_2Epair_2E_2C_2E2 _let_8) _let_3)))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_13)) V0P_2E0)) _let_11))) (_let_10 ((c_2Epair_2E_2C_2E2 (_let_7 ((c_2Epred__set_2EDELETE_2E2 _let_8) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_5))))) _let_3))))) V7n)))))))))))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) V0P_2E0)) (_let_2 V4r_27_2E0)))) ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s _let_3) V5s_2E0)) (_let_2 V6r_2E0)))))) (mono_2Ec_2Enum_2ESUC V7n))))))))))) (forall ((V9v_2E0 u) (V10v1_2E0 u) (V11v2_2E0 u) (V12v3 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) _let_5))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) V0P_2E0)) (_let_2 V9v_2E0)))) ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s _let_3) V10v1_2E0)) (_let_2 V11v2_2E0)))))) V12v3)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0xs_2E0))) (let ((_let_5 (c_2Eset__relation_2Eminimal__elements_2E2 _let_4))) (= (_let_3 (_let_5 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) _let_4)))) (_let_3 (_let_5 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself (tyop_2Efcp_2Ebit0 A_27a))) c_2Ebool_2Ethe__value_2E0)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eset__relation_2Eacyclic_2E1 (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 _let_1)) c_2Epair_2ESWAP_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eset__relation_2Eacyclic_2E1 _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Efchains_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Efchains_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (c_2Eset__relation_2Etc_2E1 (_let_1 V0r_2E0))))) (= (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)) _let_2)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27c))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_6 A_27b))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s A_27b))) (= (_let_12 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_8) _let_5) _let_3) _let_1)) (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_8))) _let_5))) _let_3))) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s _let_3))) (= (_let_9 ((c_2Erelation_2EWFREC_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Erelation_2EWFREC_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 _let_2))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Ebag_2Edominates_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Ebag_2Edominates_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ETC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ETC_2E0)) _let_4)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebag_2EBAG__INSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Ebag_2EBAG__INSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (= (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3z_2E0))) (let ((_let_5 (c_2Epair_2E_2C_2E2 (_let_3 V1x_2E0)))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V2y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_8) _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 (_let_5 _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 (_let_5 _let_4))) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Etransitive_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (= (_let_4 (c_2Eset__relation_2Euniv__reln_2E1 _let_3)) (_let_4 (c_2Eset__relation_2Erel__to__reln_2E1 ((s (_let_1 _let_2)) (c_2Eset__relation_2ERRUNIV_2E1 _let_3)))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0xs_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (forall ((V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0xs_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V1r_2E0))))) (= _let_3 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F1_2E0)) _let_5))) _let_4))) ((s _let_1) V1r_2E0)))))))))))))) (=> (forall ((V0xs_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0xs_2E0))) (let ((_let_7 ((s A_27a) V2x_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_4 _let_12))) (let ((_let_15 (_let_8 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_10 _let_15)) F0_2E0)) _let_6))) _let_3))) _let_7)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_7) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_4 _let_11)) F1_2E0)) _let_7))) _let_6))) _let_3))))))))))))))))))))) (forall ((V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0xs_2E0))) (let ((_let_8 (_let_4 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (= (_let_6 ((c_2Eset__relation_2Emaximal__elements_2E2 _let_7) _let_3)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_7))) _let_3)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Epartial__order_2E2 _let_2) _let_1)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0w_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2y_2E0))) (let ((_let_7 (_let_5 V1x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_9 _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_11)) F0_2E0)) _let_2))) _let_7))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_7) _let_6))) (_let_4 (c_2Eset__relation_2Estrict_2E1 (_let_4 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))))))) (forall ((V0w_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) ((s _let_1) V0w_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1s_2E0 u) (V2r_27_2E0 u) (V3s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3s_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V2r_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1s_2E0))) (let ((_let_7 (_let_3 V0r_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_7) _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_7))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0l_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (= (_let_3 (c_2Elist_2EFLAT_2E1 _let_2)) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s (_let_4 (_let_4 _let_1))) c_2Elist_2EAPPEND_2E0)) (_let_3 c_2Elist_2ENIL_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V1w_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V1w_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2x_2E0))) (let ((_let_6 (_let_4 V0e_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_3 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_3 _let_11)) F0_2E0)) _let_6))) _let_2))) _let_5)) (_let_9 ((c_2Epair_2E_2C_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_5) _let_6))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_2))))))))))))))))))) (forall ((V0e_2E0 u) (V1w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0e_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1w_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (= (_let_5 ((c_2Ewellorder_2EADD1_2E2 _let_3) _let_6)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_7 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_6))))) _let_6) (_let_5 (c_2Ewellorder_2Ewellorder__ABS_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_6))) (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F0_2E0)) _let_3))) _let_6))))))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Etc_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Eset__relation_2Etc_2E0)) _let_5))) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (let ((_let_5 (_let_4 (_let_3 _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_5))) (= (_let_4 (_let_3 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_2) (_let_1 V2l2_2E0))))) _let_5)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1xy_2E0 u) (V2x_2E0 u) (V3s_2E0 u) (V4r2_2E0 u) (V5r2_2E0 u) (V6r1_2E0 u) (V7r1_2E0 u) (V8r_2E0 u) (V9r_2E0 u) (V10r_2E0 u) (V11R2_2E0 u) (V12R1_2E0 u) (V13R_2E0 u) (V14R_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V9r_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 V0y_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V2x_2E0))) (let ((_let_9 (s _let_2))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_3 V5r2_2E0))) (let ((_let_12 (tyop_2Emin_2Efun A_27b))) (let ((_let_13 (_let_12 tyop_2Emin_2Ebool))) (let ((_let_14 (tyop_2Emin_2Efun A_27a))) (let ((_let_15 (s (_let_14 _let_13)))) (let ((_let_16 (_let_3 V7r1_2E0))) (let ((_let_17 (_let_15 V11R2_2E0))) (let ((_let_18 (_let_15 V12R1_2E0))) (let ((_let_19 (_let_14 tyop_2Emin_2Ebool))) (let ((_let_20 (s (_let_14 _let_19)))) (let ((_let_21 (_let_20 V14R_2E0))) (let ((_let_22 (s _let_19))) (let ((_let_23 (_let_22 c_2Epred__set_2EUNIV_2E0))) (let ((_let_24 (_let_15 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_4)))) (let ((_let_25 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool)) V8r_2E0))) (let ((_let_26 (_let_22 V3s_2E0))) (let ((_let_27 (s ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_28 (_let_27 V10r_2E0))) (let ((_let_29 (_let_20 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_28)))) (let ((_let_30 (_let_20 ((c_2Epred__set_2EREL__RESTRICT_2E2 _let_29) _let_26)))) (let ((_let_31 ((s ((tyop_2Emin_2Efun (_let_1 A_27c)) tyop_2Emin_2Ebool)) V6r1_2E0))) (let ((_let_32 (tyop_2Emin_2Efun A_27c))) (let ((_let_33 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27b)) tyop_2Emin_2Ebool)) V4r2_2E0))) (let ((_let_34 (_let_20 (c_2Erelation_2ETC_2E1 _let_29)))) (let ((_let_35 (_let_15 V13R_2E0))) (let ((_let_36 (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_35)))) (let ((_let_37 (_let_9 V1xy_2E0))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_37) _let_36))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_13) ((app_2E2 _let_35) (_let_7 (c_2Epair_2EFST_2E1 _let_37))))) (_let_5 (c_2Epair_2ESND_2E1 _let_37)))))) (= (_let_15 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_36)) _let_35) (= (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_24)) _let_4) (= (_let_27 (c_2Eset__relation_2Estrict_2E1 _let_28)) (_let_27 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_20 (c_2Erelation_2ESTRORD_2E1 _let_29))))) (= (_let_27 (c_2Eset__relation_2Etc_2E1 _let_28)) (_let_27 (c_2Eset__relation_2Erel__to__reln_2E1 _let_34))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Eset__relation_2Eacyclic_2E1 _let_28))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Eirreflexive_2E1 _let_34)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Eset__relation_2Eirreflexive_2E2 _let_28) _let_26))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Eirreflexive_2E1 _let_30)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Eset__relation_2Ereflexive_2E2 _let_28) _let_26))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Ereflexive_2E1 (_let_20 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_29) _let_26)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Eset__relation_2Eantisym_2E1 _let_28))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Eantisymmetric_2E1 _let_29)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Eset__relation_2Elinear__order_2E2 _let_28) _let_23))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2EWeakLinearOrder_2E1 _let_29)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_28) _let_23))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2EStrongLinearOrder_2E1 _let_29)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Eset__relation_2Epartial__order_2E2 _let_28) _let_23))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2EWeakOrder_2E1 _let_29)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Eset__relation_2Etransitive_2E1 _let_28))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Etransitive_2E1 _let_29)))) (= (_let_27 (c_2Eset__relation_2Euniv__reln_2E1 _let_26)) (_let_27 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_20 (c_2Eset__relation_2ERRUNIV_2E1 _let_26))))) (= (_let_3 ((c_2Eset__relation_2Ercomp_2E2 _let_31) _let_33)) (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 (_let_15 ((c_2Erelation_2EO_2E2 ((s (_let_32 _let_13)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_33))) ((s (_let_14 (_let_32 tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_31))))))) (= (_let_27 ((c_2Eset__relation_2Errestrict_2E2 _let_28) _let_26)) (_let_27 (c_2Eset__relation_2Erel__to__reln_2E1 _let_30))) (= (_let_22 (c_2Eset__relation_2Erange_2E1 _let_25)) (_let_22 (c_2Erelation_2ERRANGE_2E1 ((s (_let_12 _let_19)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_25))))) (= (_let_22 (c_2Eset__relation_2Edomain_2E1 _let_4)) (_let_22 (c_2Erelation_2ERDOM_2E1 _let_24))) (= (_let_20 ((c_2Epred__set_2EREL__RESTRICT_2E2 _let_21) _let_23)) _let_21) (= (_let_20 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_21) _let_23)) _let_21) (= (= _let_18 _let_17) (= (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_18)) (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_17)))) (= (= _let_16 _let_11) (= (_let_15 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_16)) (_let_15 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_11)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Eset__relation_2Ereln__to__rel_2E3 _let_4) _let_8) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 (_let_9 ((c_2Epair_2E_2C_2E2 _let_8) _let_6))) _let_4))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Echain_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3y_2E0))) (let ((_let_5 (_let_3 V2x_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_4) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_8)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 (_let_3 (c_2Erelation_2ETC_2E1 (_let_3 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))))) (= (_let_1 c_2Eset__relation_2Ereln__to__rel_2E0) (_let_1 c_2Epair_2ECURRY_2E0)))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Epartial__order_2E2 _let_4) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Epartial__order_2E2 (_let_3 ((c_2Eset__relation_2Errestrict_2E2 _let_4) _let_2))) _let_2))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V3s_27_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Epartial__order_2E2 _let_3) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 (_let_1 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_5) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_3) _let_2)))) (exists ((V4x_27_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V4x_27_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_5) (_let_4 V2x_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_3 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_3 V3s_27_2E0)) _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0r1_2E0 u) (V1r2_2E0 u) (V2s1_2E0 u) (V3s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3s2_2E0))) (let ((_let_3 (_let_1 V2s1_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1r2_2E0))) (let ((_let_6 (_let_4 V0r1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Efinite__prefixes_2E2 (_let_4 ((c_2Epred__set_2EUNION_2E2 _let_6) _let_5))) (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Eset__relation_2Efinite__prefixes_2E2 _let_4))) (let ((_let_7 (_let_1 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_7)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Efinite__prefixes_2E2 (_let_3 ((c_2Eset__relation_2Errestrict_2E2 _let_4) _let_2))) _let_2))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Eset__relation_2Errestrict_2E2 (_let_4 V0r_2E0)))) (= (_let_4 ((c_2Eset__relation_2Errestrict_2E2 (_let_4 (_let_5 _let_3))) _let_2)) (_let_4 (_let_5 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) V2m) (= (_let_3 ((c_2Elist_2EEL_2E2 _let_1) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_2) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Erich__list_2ECOUNT__LIST V2m))))))) (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eset__relation_2ERRUNIV_2E3 _let_7) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eset__relation_2ERRUNIV_2E0)) _let_7))) _let_3))) _let_2)))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2)))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (_let_1 V0p_2E0))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1LIST__RELi_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (forall ((V2h1_2E0 u) (V3h2_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V3h2_2E0))) (let ((_let_4 (_let_2 V5l2_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27a) V2h1_2E0))) (let ((_let_8 (_let_6 V4l1_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) V1LIST__RELi_27_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_14 ((tyop_2Emin_2Efun A_27a) _let_13))) (let ((_let_15 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_14)) V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_8))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2EindexedLists_2ELIST__RELi_2E3 _let_15) _let_8) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 _let_15) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_8))))) _let_7))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_6 ((c_2Elist_2EAPPEND_2E2 _let_8) (_let_6 ((c_2Elist_2ECONS_2E2 _let_7) (_let_6 c_2Elist_2ENIL_2E0)))))))) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_2 ((c_2Elist_2ECONS_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0))))))))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V1LIST__RELi_27_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V6a0_2E0 u) (V7a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V7a1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V6a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0R_2E0)) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V1LIST__RELi_27_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V2s_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F0_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))) (forall ((V0x_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1sos_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_1) ((s _let_3) (c_2Epred__set_2EBIGUNION_2E1 _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_6) (_let_5 ((app_2E2 ((s (_let_2 _let_4)) F0_2E0)) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V1s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_6))) _let_4))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) (_let_2 ((app_2E2 (_let_7 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) F1_2E0)) _let_4))) _let_3)))))))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2t_2E0 u) (V0P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (_let_3 V2t_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V0P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (_let_2 V2t_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_2 V1s_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_8) _let_4))) (_let_2 ((app_2E2 (_let_7 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__EXISTS_2E2 _let_8) (_let_2 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) F1_2E0)) _let_4))) _let_3))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist A_27a)) V2l_2E0))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) V1n) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_2))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0x))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27a) V1x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Ebool_2ERES__SELECT_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (_let_1 V0p_2E0))) (_let_2 (c_2Emin_2E_40_2E1 (_let_1 F0_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 ((s A_27b) V4x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F1_2E0)) _let_3))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))))))))) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_3) (_let_2 F0_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F1_2E0)) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (c_2Ebool_2ERES__ABSTRACT_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)))) (let ((_let_4 (_let_2 (_let_3 (_let_2 V1m_2E0))))) (= (_let_2 (_let_3 _let_4)) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0x_2E0 u) (V1N_2E0 u) (V2M_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1N_2E0))) (let ((_let_3 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_4 (_let_1 V2M_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 _let_2) (_let_1 V0P_2E0)))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Emin_2E_3D_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Emin_2E_3D_2E0)) _let_1)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2i_2E0 u)) (let ((_let_1 ((s A_27a) V2i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1j_2E0 u)) (let ((_let_1 ((s A_27a) V1j_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__FORALL_2E2 (_let_3 (c_2Emin_2E_3D_2E1 _let_1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_5 (_let_2 V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__EXISTS_2E2 _let_5) (_let_2 ((app_2E2 (_let_4 F1_2E0)) _let_3))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) (_let_2 ((app_2E2 (_let_4 F0_2E0)) _let_3))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS__UNIQUE_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) (= (_let_1 (_let_4 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))) (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) V0m)))) (_let_1 (_let_4 _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1)))))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_5 (_let_2 V1s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__EXISTS_2E2 _let_5) (_let_2 ((app_2E2 (_let_4 F0_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) (_let_2 ((app_2E2 (_let_4 F1_2E0)) _let_3)))))))))))))))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3x_2E0 u) (V4s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V4s_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F1_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))) (forall ((V0P_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 (_let_6 V1sos_2E0)) (_let_6 ((app_2E2 ((s (_let_2 _let_5)) F1_2E0)) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) V0P_2E0)) _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_2 (c_2Epred__set_2EBIGINTER_2E1 ((s (_let_3 tyop_2Emin_2Ebool)) V1sos_2E0)))) (_let_2 ((app_2E2 ((s (_let_3 _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V2s_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F0_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))) (forall ((V0x_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1sos_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_1) ((s _let_3) (c_2Epred__set_2EBIGINTER_2E1 _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_6) (_let_5 ((app_2E2 ((s (_let_2 _let_4)) F0_2E0)) _let_1)))))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (= (_let_300 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_300 c_2Emin_2E_40_2E0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2t_2E0 u) (V0P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V2t_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_6))) _let_4))) _let_1))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V0P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (_let_2 V2t_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_2 V1s_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_8) _let_4))) (_let_2 ((app_2E2 (_let_7 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 _let_8) (_let_2 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) F1_2E0)) _let_4))) _let_3))))))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27c))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V0P_2E0)) (_let_1 V1f_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_1 V1f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) (_let_1 V0P_2E0)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_2) (_let_1 V0P_2E0)))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t0) (exists ((V3t1 mono_2Etyop_2Enum_2Enum)) (and (V1b V3t1) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) V2a))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1m Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1m))))) ((s A_27a) V2x_2E0)))) V1m)))) (forall ((V0p_2E0 u) (V1m Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0p_2E0))) (= (and V1m (not (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1m))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (_let_1 _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2x_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 (_let_2 V3l2_2E0))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_2 V1l1_2E0))) (=> (= (_let_6 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_4))))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_7) _let_3)))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 V0l1_2E0)) (_let_1 V1l2_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V0l1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V1l2_2E0))))))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V2x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V3y_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Epartial__order_2E2 _let_7) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_3) _let_5))) _let_7)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V1s_2E0)) (_let_1 F0_2E0)))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1m_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1m_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_7) _let_2))) (= _let_2 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F1_2E0)) _let_7))) _let_3))) _let_2)))))))))))))) (=> (forall ((V1m_2E0 u) (V0p_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0p_2E0))) (let ((_let_6 (_let_4 V1m_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_2 _let_3))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) (_let_4 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F1_2E0)) _let_6))) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_5))) _let_1))))))))))))))) (forall ((V0p_2E0 u) (V1m_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0p_2E0))) (let ((_let_4 (_let_2 V1m_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_3) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2ECOMM_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2ECOMM_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (= (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 _let_2) (_let_1 F0_2E0)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardgt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardgt_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 _let_7))) (= (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_2)))) (= _let_3 _let_2)) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F2_2E0)) _let_7))) _let_3))) _let_2))))))))))))))) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_4 V0P_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_7 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F1_2E0)) _let_8))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 _let_8) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F2_2E0)) _let_5))) _let_1))))))))))))))))) (=> (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 V0P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_7) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 _let_7) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_7))) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS_2E2 _let_7) (_let_2 ((app_2E2 (_let_6 F0_2E0)) _let_3)))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Eone_2Eone V0) V1))) (_let_3 ((c_2EDecode_2Eenc2dec_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_2 _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2i_2E0 u)) (let ((_let_1 ((s A_27a) V2i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1j_2E0 u)) (let ((_let_1 ((s A_27a) V1j_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_3 (c_2Emin_2E_3D_2E1 _let_1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1m Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1m))))) ((s A_27a) V2x_2E0)))) V1m)))) (forall ((V0p_2E0 u) (V1m Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (and V1m (exists ((V3x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 V0p_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V3x_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_3 V0p_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1m)))))))))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V0P_2E0 u) (V3s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_2 V3s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F1_2E0)) _let_3))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) (_let_2 ((app_2E2 ((s (_let_4 _let_1)) F2_2E0)) _let_3)))))))))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1sos_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 _let_7))) (_let_2 ((app_2E2 ((s (_let_4 _let_1)) F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 _let_7) (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1m1_2E0 u) (V2m2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (c_2Ebool_2ERES__ABSTRACT_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)))) (= (= (_let_2 (_let_3 (_let_2 V1m1_2E0))) (_let_2 (_let_3 (_let_2 V2m2_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0)))) (= (_let_4 ((app_2E2 (_let_3 V1m1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V2m2_2E0)) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V1R_2E0 u) (V3x_2E0 u) (V4i_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 ((s A_27a) V4i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1R_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1R_2E0 u) (V5i_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V6x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V1R_2E0)) ((s A_27a) V5i_2E0)))) ((s A_27b) V6x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1R_2E0)))) ((s A_27a) V5i_2E0))))))))) (forall ((V0P_2E0 u) (V1R_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_4 V0P_2E0)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1R_2E0)))))) (forall ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 (s _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_6 V0P_2E0)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V1R_2E0)))) ((s A_27b) V3x_2E0)))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2y_2E0))) (let ((_let_6 (_let_4 V1x_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) F1_2E0)) _let_6))) _let_5))) _let_3))) (and (not (= _let_6 _let_5)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) _let_3)))))))))))))))) (=> (forall ((V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0r_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2y_2E0))) (let ((_let_6 (_let_4 V1x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_9 _let_11))) (let ((_let_14 (_let_9 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_7 _let_14)) F0_2E0)) _let_3))) _let_6))) _let_5)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) F1_2E0)) _let_6))) _let_5))) _let_3)))))))))))))))))))) (forall ((V0r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0r_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 (_let_7 _let_6)))) (= (_let_4 (c_2Eset__relation_2Estrict_2E1 _let_5)) (_let_4 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_2 _let_6)) (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F0_2E0)) _let_5))))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (_let_1 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (_let_1 V0p_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3x_2E0 u) (V4s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V4s_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) F1_2E0)) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))) (forall ((V0P_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (= (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 (_let_6 V1sos_2E0)) (_let_6 ((app_2E2 ((s (_let_2 _let_5)) F1_2E0)) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) V0P_2E0)) _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_2 (c_2Epred__set_2EBIGINTER_2E1 ((s (_let_3 tyop_2Emin_2Ebool)) V1sos_2E0)))) (_let_2 ((app_2E2 ((s (_let_3 _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_5))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 _let_3) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ellist_2ELAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2)))))))) (forall ((A_27a d) (F0_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27a) V3i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V2R_2E0 u) (V4i_2E0 u)) (let ((_let_1 ((s A_27a) V4i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2R_2E0 u) (V6i_2E0 u)) (let ((_let_1 ((s A_27a) V6i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2R_2E0 u) (V5i_2E0 u)) (let ((_let_1 ((s A_27a) V5i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2R_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 V1Q_2E0))) (let ((_let_8 (_let_2 V0P_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__EXISTS_2E2 _let_8) (_let_2 ((app_2E2 (_let_6 F1_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__EXISTS_2E2 _let_7) (_let_2 ((app_2E2 (_let_6 F2_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_8))) _let_7))) (_let_2 ((app_2E2 (_let_6 F3_2E0)) _let_3))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V2R_2E0 u) (V3i_2E0 u) (V4j_2E0 u)) (let ((_let_1 ((s A_27b) V4j_2E0))) (let ((_let_2 ((s A_27a) V3i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F3_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (=> (forall ((V1Q_2E0 u) (V2R_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27a) V3i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (s _let_2))) (let ((_let_9 (_let_8 V1Q_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__FORALL_2E2 _let_9) (_let_8 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_7 _let_4)) F3_2E0)) _let_6))) _let_1))))))))))))))))))) (=> (forall ((V2R_2E0 u) (V5j_2E0 u) (V6i_2E0 u)) (let ((_let_1 ((s A_27b) V5j_2E0))) (let ((_let_2 ((s A_27a) V6i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2R_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0P_2E0 u) (V2R_2E0 u) (V5j_2E0 u)) (let ((_let_1 ((s A_27b) V5j_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V2R_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 (s _let_7))) (let ((_let_11 (_let_10 V0P_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_9 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_13)) F1_2E0)) _let_11))) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__FORALL_2E2 _let_11) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_6))) _let_1)))))))))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2R_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0P_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (s _let_1))) (let ((_let_11 (_let_10 V1Q_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_8 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__FORALL_2E2 _let_7) (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_13)) F0_2E0)) _let_11))) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__FORALL_2E2 _let_11) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_7))) _let_4))))))))))))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2n mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (=> (= ((mono_2Ec_2EDecode_2Edec__bnum V0m) V1l) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2n) V3t))) (= V1l ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Eencode__bnum V0m) V2n)) V3t)))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3s_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27c) V3s_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V2x_2E0)) (_let_1 F0_2E0))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (_let_1 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_3))) _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V0P_2E0)) (_let_1 V1f_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_1 V1s_2E0)) (_let_1 F0_2E0))))))))) (forall ((A_27a d) (F0_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3j_2E0 u)) (let ((_let_1 ((s A_27a) V3j_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V2R_2E0 u) (V4i_2E0 u)) (let ((_let_1 ((s A_27a) V4i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2R_2E0 u) (V6i_2E0 u)) (let ((_let_1 ((s A_27a) V6i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2R_2E0 u) (V5i_2E0 u)) (let ((_let_1 ((s A_27a) V5i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2R_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 V1Q_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_2 V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_9))) _let_7))) (_let_2 ((app_2E2 (_let_6 F3_2E0)) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 _let_9) (_let_2 ((app_2E2 (_let_6 F1_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 _let_7) (_let_2 ((app_2E2 (_let_6 F2_2E0)) _let_3)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGINTER_2E0)) _let_3)))))))) (forall ((A_27a d) (V0p_2E0 u) (V1m_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1m_2E0))) (let ((_let_3 (_let_1 V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27a) ((c_2Ebool_2ERES__SELECT_2E2 _let_3) _let_2)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (_let_2 V0P_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2Ebool_2ERES__SELECT_2E2 _let_4) _let_3)) (_let_7 (c_2Emin_2E_40_2E1 (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_1 (c_2Ecombin_2EI_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Elist_2ENIL_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V6x mono_2Etyop_2Enum_2Enum) (V7f (-> Bool Bool Bool)) (V8b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V8b))) (= ((((mono_2Ec_2Ebit_2EBITWISE V6x) V7f) mono_2Ec_2Enum_2E0) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL ((((mono_2Ec_2Enumeral__bit_2EiBITWISE V6x) V7f) mono_2Ec_2Enum_2E0) _let_1))))) (forall ((V9x mono_2Etyop_2Enum_2Enum) (V10f (-> Bool Bool Bool)) (V11a mono_2Etyop_2Enum_2Enum) (V12b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V12b))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL V11a))) (= ((((mono_2Ec_2Ebit_2EBITWISE V9x) V10f) _let_2) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL ((((mono_2Ec_2Enumeral__bit_2EiBITWISE V9x) V10f) _let_2) _let_1)))))) (forall ((V3x mono_2Etyop_2Enum_2Enum) (V4f (-> Bool Bool Bool)) (V5a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V5a))) (= ((((mono_2Ec_2Ebit_2EBITWISE V3x) V4f) _let_1) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL ((((mono_2Ec_2Enumeral__bit_2EiBITWISE V3x) V4f) _let_1) mono_2Ec_2Enum_2E0))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1f (-> Bool Bool Bool)) (V2a_2E0 u)) (= ((((mono_2Ec_2Ebit_2EBITWISE V0x) V1f) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL ((((mono_2Ec_2Enumeral__bit_2EiBITWISE V0x) V1f) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakOrder_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V7b mono_2Etyop_2Enum_2Enum) (V8e mono_2Etyop_2Enum_2Enum) (V9y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V8e))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V5n)))) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF _let_3) V6f) mono_2Ec_2Enum_2E0) V7b) _let_1) V9y) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF ((mono_2Ec_2Earithmetic_2E_2D _let_3) _let_2)) V6f) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2B V7b) _let_2)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiDUB V8e))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V6f V7b) mono_2Ec_2Ebool_2EF)) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V9y)) V9y))))))) (forall ((V15n mono_2Etyop_2Enum_2Enum) (V16f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V17x mono_2Etyop_2Enum_2Enum) (V18b mono_2Etyop_2Enum_2Enum) (V19e mono_2Etyop_2Enum_2Enum) (V20y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V19e))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL V17x))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V15n)))) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF _let_4) V16f) _let_3) V18b) _let_1) V20y) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF ((mono_2Ec_2Earithmetic_2E_2D _let_4) _let_2)) V16f) (mono_2Ec_2Earithmetic_2EDIV2 _let_3)) ((mono_2Ec_2Earithmetic_2E_2B V18b) _let_2)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiDUB V19e))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V16f V18b) (mono_2Ec_2Earithmetic_2EODD V17x))) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V20y)) V20y)))))))) (forall ((V21n mono_2Etyop_2Enum_2Enum) (V22f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V23x mono_2Etyop_2Enum_2Enum) (V24b mono_2Etyop_2Enum_2Enum) (V25e mono_2Etyop_2Enum_2Enum) (V26y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V25e))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL V23x))) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V21n))) V22f) _let_2) V24b) _let_1) V26y) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V21n))) V22f) (mono_2Ec_2Earithmetic_2EDIV2 _let_2)) ((mono_2Ec_2Earithmetic_2E_2B V24b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiDUB V25e))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V22f V24b) (mono_2Ec_2Earithmetic_2EODD V23x))) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V26y)) V26y)))))) (forall ((V10n mono_2Etyop_2Enum_2Enum) (V11f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V12b mono_2Etyop_2Enum_2Enum) (V13e mono_2Etyop_2Enum_2Enum) (V14y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V13e))) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V10n))) V11f) mono_2Ec_2Enum_2E0) V12b) _let_1) V14y) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V10n))) V11f) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2B V12b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiDUB V13e))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V11f V12b) mono_2Ec_2Ebool_2EF)) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V14y)) V14y))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1x mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum) (V3e mono_2Etyop_2Enum_2Enum) (V4y mono_2Etyop_2Enum_2Enum)) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF mono_2Ec_2Enum_2E0) V0f) V1x) V2b) V3e) V4y) V4y))) (forall ((A_27a d) (A_27b d) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V7s1_2E0 u) (V1w2_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) V1w2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V7s1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F4_2E0)) _let_5))) _let_2))) (= _let_5 (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_2))))))))))) (=> (forall ((V1w2_2E0 u) (V7s1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V7s1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) V1w2_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_5))) (= (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F3_2E0)) _let_4))) _let_2)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F4_2E0)) _let_2))) _let_4))) (_let_6 c_2Eoption_2ENONE_2E0)) (_let_6 ((c_2Ewellorder_2Ewleast_2E2 _let_4) _let_2)))))))))))))))) (=> (forall ((V1w2_2E0 u) (V6s0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V6s0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_9 ((s _let_8) V1w2_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_1))) (let ((_let_11 (tyop_2Emin_2Efun _let_8))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_1))) (= (_let_2 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_11 _let_12)) F2_2E0)) _let_9))) _let_6)) (_let_2 ((c_2Ebool_2ELET_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F3_2E0)) _let_9))) ((s _let_7) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 A_27b)) c_2Eoption_2ETHE_2E0)) (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) (_let_2 c_2Eoption_2ENONE_2E0))))))))))))))))))))) (=> (forall ((V1w2_2E0 u) (V0w1_2E0 u) (V4f_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_3 ((s _let_2) V0w1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V4f_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_11 ((s _let_10) V1w2_2E0))) (let ((_let_12 ((tyop_2Emin_2Efun _let_9) _let_5))) (let ((_let_13 (tyop_2Emin_2Efun _let_10))) (let ((_let_14 (s _let_5))) (let ((_let_15 ((tyop_2Emin_2Efun _let_6) _let_6))) (let ((_let_16 ((tyop_2Emin_2Efun _let_2) _let_15))) (= (_let_14 ((app_2E2 (_let_7 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_13 _let_16)) F1_2E0)) _let_11))) _let_3))) _let_8))) _let_1)) (_let_14 ((c_2Ebool_2ELET_2E2 ((s _let_12) ((app_2E2 ((s (_let_13 _let_12)) F2_2E0)) _let_11))) ((s _let_9) ((c_2Epred__set_2EIMAGE_2E2 _let_8) ((s (_let_4 tyop_2Emin_2Ebool)) ((c_2Ewellorder_2Eiseg_2E2 _let_3) _let_1)))))))))))))))))))))))) (=> (forall ((V0w1_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V3y_2E0))) (let ((_let_7 (_let_5 V2x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_9 _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_11)) F0_2E0)) _let_2))) _let_7))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_7) _let_6))) (_let_4 (c_2Eset__relation_2Estrict_2E1 (_let_4 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))))))) (forall ((V0w1_2E0 u) (V1w2_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) V1w2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_6))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_11 (s _let_6))) (= (_let_11 ((c_2Ewellorder_2Ewo2wo_2E2 _let_2) _let_4)) (_let_11 ((c_2Erelation_2EWFREC_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F0_2E0)) _let_2))) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F1_2E0)) _let_4))) _let_2))))))))))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1r_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (let ((_let_4 (_let_1 V1r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V0l_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_6) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))) _let_2)))))))))))) (= (_let_299 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Emin_2Ebool)) (_let_299 c_2Ecombin_2EFAIL_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT__REVERSE V0m) V1n) (((mono_2Ec_2Enumeral__bit_2EBIT__REV V0m) V1n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0b1_2E0))) (= (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_5))) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_298 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Earithmetic_2EFUNPOW_2Emono_2Etyop_2Enum_2Enum)) (_let_298 c_2Earithmetic_2EFUNPOW_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2ECOMM_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2ECOMM_2E0)) _let_3))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2n_2E0 u)) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP V1x) mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V9x mono_2Etyop_2Enum_2Enum) (V10n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V9x))) (mono_2Ec_2Earithmetic_2EBIT2 V10n)) (mono_2Ec_2Enumeral_2EiDUB ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V9x))) (mono_2Ec_2Enum_2ESUC V10n))))) (forall ((V7x mono_2Etyop_2Enum_2Enum) (V8n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V7x)))) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP _let_1) (mono_2Ec_2Earithmetic_2EBIT2 V8n)) (mono_2Ec_2Enumeral_2EiDUB ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (mono_2Ec_2Enum_2ESUC V8n)))))) (forall ((V5x mono_2Etyop_2Enum_2Enum) (V6n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V5x))) (mono_2Ec_2Earithmetic_2EBIT1 V6n)) (mono_2Ec_2Earithmetic_2EBIT1 ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V5x))) V6n)))) (forall ((V3x mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3x)))) (= ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP _let_1) (mono_2Ec_2Earithmetic_2EBIT1 V4n)) (mono_2Ec_2Earithmetic_2EBIT1 ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V4n))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__tree_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__tree_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (and (= (mono_2Ec_2Enumeral__bit_2EiLOG2 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Enum_2E0) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral__bit_2EiLOG2 (mono_2Ec_2Earithmetic_2EBIT1 V0n)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enumeral__bit_2EiLOG2 V0n)))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral__bit_2EiLOG2 (mono_2Ec_2Earithmetic_2EBIT2 V1n)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enumeral__bit_2EiLOG2 V1n))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2Ecombin_2EFAIL_2E2 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 (_let_3 tyop_2Enum_2Enum))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (= mono_2Ec_2Enumeral__bit_2EiMOD__2EXP mono_2Ec_2Ebit_2EMOD__2EXP) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum)) (= (forall ((V2m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V1n) (V0P V2m))) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum V0P) (mono_2Ec_2Erich__list_2ECOUNT__LIST V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27state d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27state))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27state) A_27state)) V0f_2E0))) (let ((_let_4 (s ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (= (_let_4 ((c_2Estate__transformer_2EWRITE_2E2 _let_3) _let_2)) (_let_4 ((c_2Epair_2E_2C_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))) (_let_1 ((app_2E2 _let_3) _let_2)))))))))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum) (V4y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV (mono_2Ec_2Enum_2ESUC V2n)) V3x) V4y) (((mono_2Ec_2Enumeral__bit_2EBIT__REV V2n) ((mono_2Ec_2Earithmetic_2EDIV V3x) _let_1)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A _let_1) V4y)) ((mono_2Ec_2Ebit_2ESBIT (mono_2Ec_2Earithmetic_2EODD V3x)) mono_2Ec_2Enum_2E0)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV mono_2Ec_2Enum_2E0) V0x) V1y) V1y))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_1) ((s _let_3) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakLinearOrder_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EDIV__2EXP V0n) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EDIV__2EXP V1n) (mono_2Ec_2Earithmetic_2ENUMERAL V2x)) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral__bit_2EiDIV2) V1n) V2x))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (and (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V7x mono_2Etyop_2Enum_2Enum) (V8b mono_2Etyop_2Enum_2Enum) (V9e mono_2Etyop_2Enum_2Enum) (V10y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF (mono_2Ec_2Enum_2ESUC V5n)) V6f) V7x) V8b) V9e) V10y) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF V5n) V6f) ((mono_2Ec_2Earithmetic_2EDIV V7x) _let_1)) ((mono_2Ec_2Earithmetic_2E_2B V8b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Earithmetic_2E_2A _let_1) V9e)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V6f V8b) (mono_2Ec_2Earithmetic_2EODD V7x))) ((mono_2Ec_2Earithmetic_2E_2B V9e) V10y)) V10y))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1x mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum) (V3e mono_2Etyop_2Enum_2Enum) (V4y mono_2Etyop_2Enum_2Enum)) (= ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF mono_2Ec_2Enum_2E0) V0f) V1x) V2b) V3e) V4y) V4y))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_2 (mono_2Ec_2Enumeral__bit_2EiSUC V0n))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (and (= (mono_2Ec_2Enumeral__bit_2EiDIV2 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO) (= (mono_2Ec_2Enumeral__bit_2EiDIV2 _let_3) _let_2) (= (mono_2Ec_2Earithmetic_2ENUMERAL _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enum_2ESUC V0n))) (= (mono_2Ec_2Enumeral__bit_2EiDIV2 (mono_2Ec_2Enumeral__bit_2EiSUC _let_3)) _let_2) (= (mono_2Ec_2Enumeral__bit_2EiDIV2 (mono_2Ec_2Enumeral__bit_2EiSUC _let_1)) _let_2) (= (mono_2Ec_2Enumeral__bit_2EiDIV2 _let_1) V0n) (= (mono_2Ec_2Enumeral__bit_2EiDIV2 (mono_2Ec_2Enumeral__bit_2EiSUC mono_2Ec_2Earithmetic_2EZERO)) mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_297 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_297 c_2Elist_2EMAP_2E0)) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral_2EiDUB) V0x) (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Enumeral_2EiDUB V0x)))) (forall ((A_27a d) (V0b_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__EVERY_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_5))) _let_3))) (= (_let_2 ((c_2Ebag_2EBAG__FILTER_2E2 _let_5) _let_3)) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EEncode_2Eencode__sum_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EEncode_2Eencode__sum_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Earithmetic_2EMOD mono_2Ec_2Enum_2E0) _let_19) mono_2Ec_2Enum_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 (((c_2EEncode_2Eencode__blist_2E3 _let_6) _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) c_2EEncode_2Eencode__blist_2E0)) _let_6))) _let_5))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= mono_2Ec_2Enumeral__bit_2EiDIV2 mono_2Ec_2Earithmetic_2EDIV2) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (and (forall ((V4n mono_2Etyop_2Enum_2Enum) (V5y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V4n))) mono_2Ec_2Enum_2E0) V5y) (((mono_2Ec_2Enumeral__bit_2EBIT__REV (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V4n))) mono_2Ec_2Enum_2E0) (mono_2Ec_2Enumeral_2EiDUB V5y)))) (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7x mono_2Etyop_2Enum_2Enum) (V8y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V7x))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n)))) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV _let_2) _let_1) V8y) (((mono_2Ec_2Enumeral__bit_2EBIT__REV ((mono_2Ec_2Earithmetic_2E_2D _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (mono_2Ec_2Earithmetic_2EDIV2 _let_1)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V7x)) (mono_2Ec_2Earithmetic_2EBIT1 V8y)) (mono_2Ec_2Enumeral_2EiDUB V8y))))))) (forall ((V9n mono_2Etyop_2Enum_2Enum) (V10x mono_2Etyop_2Enum_2Enum) (V11y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V10x))) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V9n))) _let_1) V11y) (((mono_2Ec_2Enumeral__bit_2EBIT__REV (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V9n))) (mono_2Ec_2Earithmetic_2EDIV2 _let_1)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V10x)) (mono_2Ec_2Earithmetic_2EBIT1 V11y)) (mono_2Ec_2Enumeral_2EiDUB V11y)))))) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n)))) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV _let_1) mono_2Ec_2Enum_2E0) V3y) (((mono_2Ec_2Enumeral__bit_2EBIT__REV ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) mono_2Ec_2Enum_2E0) (mono_2Ec_2Enumeral_2EiDUB V3y))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2EBIT__REV mono_2Ec_2Enum_2E0) V0x) V1y) V1y))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) V0))) (and (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral__bit_2EiDIV2) mono_2Ec_2Enum_2E0) V0x) V0x)) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral__bit_2EiDIV2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))) V3x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral__bit_2EiDIV2)) (mono_2Ec_2Earithmetic_2ENUMERAL V2n)) (mono_2Ec_2Enumeral__bit_2EiDIV2 V3x)))) (forall ((V4n mono_2Etyop_2Enum_2Enum) (V5x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral__bit_2EiDIV2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V4n))) V5x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral__bit_2EiDIV2)) (mono_2Ec_2Earithmetic_2ENUMERAL V4n)) (mono_2Ec_2Enumeral__bit_2EiDIV2 (mono_2Ec_2Enumeral__bit_2EiDIV2 V5x))))) (forall ((V1y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral__bit_2EiDIV2) V1y) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n mono_2Ec_2Enum_2E0)) (= (mono_2Ec_2Ebit_2ELOWEST__SET__BIT V0n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V0n)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Ebit_2ELOWEST__SET__BIT (mono_2Ec_2Earithmetic_2EDIV2 V0n))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebag_2EBAG__FILTER_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebag_2EBAG__FILTER_2E0)) _let_6))) _let_4))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EMOD__2EXP__EQ (mono_2Ec_2Enum_2ESUC V2n)) V3a) V4b) (and (= (mono_2Ec_2Earithmetic_2EODD V3a) (mono_2Ec_2Earithmetic_2EODD V4b)) (((mono_2Ec_2Ebit_2EMOD__2EXP__EQ V2n) (mono_2Ec_2Earithmetic_2EDIV2 V3a)) (mono_2Ec_2Earithmetic_2EDIV2 V4b))))) (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6a mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EMOD__2EXP__EQ V5n) V6a) V6a) mono_2Ec_2Ebool_2ET)) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EMOD__2EXP__EQ mono_2Ec_2Enum_2E0) V0a) V1b) mono_2Ec_2Ebool_2ET))) (forall ((A_27state d) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F1_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V0j mono_2Etyop_2Enum_2Enum)) (= (= V1i V0j) ((F0 V1i) V0j))) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V0j mono_2Etyop_2Enum_2Enum) (V2a_2E0 u) (V3u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0j)))) (let ((_let_7 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_10 (s _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (let ((_let_13 (_let_2 _let_12))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_2 _let_13)) F1_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V1i))))) _let_6))) _let_4))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V3u)))) (_let_10 (c_2Estate__transformer_2EFOR_2E1 ((s (_let_7 _let_8)) ((c_2Epair_2E_2C_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1i) V0j)) ((mono_2Ec_2Earithmetic_2E_2B V1i) _let_9)) ((mono_2Ec_2Earithmetic_2E_2D V1i) _let_9))))) ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))))))))))))))))))))) (forall ((V0j mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0j)))) (let ((_let_7 (_let_5 (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (_let_2 _let_9))) (let ((_let_11 (s _let_1))) (let ((_let_12 (_let_11 ((app_2E2 _let_4) _let_7)))) (let ((_let_13 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_14 (_let_13 _let_3))) (= (_let_11 (c_2Estate__transformer_2EFOR_2E1 ((s (_let_13 _let_14)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_14) ((c_2Epair_2E_2C_2E2 _let_6) _let_4)))))) (_let_11 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F0 V1i) V0j)))) _let_12) (_let_11 ((c_2Estate__transformer_2EBIND_2E2 _let_12) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_2 _let_10)) F1_2E0)) _let_7))) _let_6))) _let_4))))))))))))))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (mono_2Ec_2EEncode_2Ewf__pred_2Emono_2Etyop_2Enum_2Enum V1p) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (=> (V1p V2x) ((mono_2Ec_2Eprim__rec_2E_3C V2x) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0m))))) ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) V1p))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EDIV__2EXP V0n) V1x) (((mono_2Ec_2Earithmetic_2EFUNPOW_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2EDIV2) V0n) V1x))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and (forall ((V5n mono_2Etyop_2Enum_2Enum) (V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral__bit_2EFDUB V0f))) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V5n))) V6x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB _let_1)) (mono_2Ec_2Earithmetic_2ENUMERAL V5n)) (_let_1 (_let_1 V6x)))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral__bit_2EFDUB V0f))) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n))) V4x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB _let_1)) (mono_2Ec_2Earithmetic_2ENUMERAL V3n)) (_let_1 V4x))))) (forall ((V2y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB V0f)) V2y) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB V0f)) mono_2Ec_2Enum_2E0) V1x) V1x)))) (= (_let_296 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Enum_2Enum)) (_let_296 c_2EDecode_2Edec2enc_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V2n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBIT__MODIFY V0m) V1f) V2n) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF V0m) V1f) V2n) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral__bit_2EiDIV2) V0x) (mono_2Ec_2Enumeral__bit_2EiDIV2 (mono_2Ec_2Enumeral__bit_2EiDIV2 V0x)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (= (_let_293 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_293 c_2Erelation_2EWF_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows1_2E0 u) (V2rows2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V2rows2_2E0))) (let ((_let_3 ((s A_27a) V0v_2E0))) (let ((_let_4 (c_2EpatternMatches_2EPMATCH_2E2 _let_3))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V1rows1_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_3) _let_6) _let_2))) (and (= (exists ((V4r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V4r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_2)) V2rows2_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 _let_3) ((s A_27a) V0v_2E0)))))))))))) (exists ((V3r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V3r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 _let_3) ((s A_27a) V0v_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_2)) V1rows1_2E0))))))))))))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (and (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EMOD__2EXP__MAX mono_2Ec_2Enum_2E0) V0a) mono_2Ec_2Ebool_2ET)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= (and (mono_2Ec_2Earithmetic_2EODD V2a) ((mono_2Ec_2Ebit_2EMOD__2EXP__MAX V1n) (mono_2Ec_2Earithmetic_2EDIV2 V2a))) ((mono_2Ec_2Ebit_2EMOD__2EXP__MAX (mono_2Ec_2Enum_2ESUC V1n)) V2a)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))) (let ((_let_6 (c_2Elist_2ELUPDATE_2E3 ((s A_27a) V3x_2E0)))) (let ((_let_7 (c_2Elist_2EAPPEND_2E2 _let_3))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) V2n) (= (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) _let_5)))) _let_2)))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0f (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Estring_2ETRANSLATE V0f) V1s) (mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0f) V1s)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((F1 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V9opr (-> Bool Bool Bool)) (V10a mono_2Etyop_2Enum_2Enum) (V11b mono_2Etyop_2Enum_2Enum) (V12w mono_2Etyop_2Enum_2Enum)) (= ((((F1 V9opr) V10a) V11b) V12w) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V9opr (mono_2Ec_2Earithmetic_2EODD V10a)) (mono_2Ec_2Earithmetic_2EODD V11b))) (mono_2Ec_2Earithmetic_2EBIT1 V12w)) (mono_2Ec_2Enumeral_2EiDUB V12w)))) (=> (forall ((V4opr (-> Bool Bool Bool)) (V5a mono_2Etyop_2Enum_2Enum) (V6b mono_2Etyop_2Enum_2Enum) (V7w mono_2Etyop_2Enum_2Enum)) (= ((((F0 V4opr) V5a) V6b) V7w) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((V4opr (mono_2Ec_2Earithmetic_2EODD V5a)) (mono_2Ec_2Earithmetic_2EODD V6b))) (mono_2Ec_2Earithmetic_2EBIT1 V7w)) (mono_2Ec_2Enumeral_2EiDUB V7w)))) (and (forall ((V0opr (-> Bool Bool Bool)) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (= ((((mono_2Ec_2Enumeral__bit_2EiBITWISE mono_2Ec_2Enum_2E0) V0opr) V1a) V2b) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V3x mono_2Etyop_2Enum_2Enum) (V4opr (-> Bool Bool Bool)) (V5a mono_2Etyop_2Enum_2Enum) (V6b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3x)))) (= ((((mono_2Ec_2Enumeral__bit_2EiBITWISE _let_1) V4opr) V5a) V6b) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (((F0 V4opr) V5a) V6b)) ((((mono_2Ec_2Enumeral__bit_2EiBITWISE ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V4opr) (mono_2Ec_2Earithmetic_2EDIV2 V5a)) (mono_2Ec_2Earithmetic_2EDIV2 V6b)))))) (forall ((V8x mono_2Etyop_2Enum_2Enum) (V9opr (-> Bool Bool Bool)) (V10a mono_2Etyop_2Enum_2Enum) (V11b mono_2Etyop_2Enum_2Enum)) (= ((((mono_2Ec_2Enumeral__bit_2EiBITWISE (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V8x))) V9opr) V10a) V11b) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (((F1 V9opr) V10a) V11b)) ((((mono_2Ec_2Enumeral__bit_2EiBITWISE (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V8x))) V9opr) (mono_2Ec_2Earithmetic_2EDIV2 V10a)) (mono_2Ec_2Earithmetic_2EDIV2 V11b))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (= V4x mono_2Ec_2Enum_2E0) (F0 V4x))) (and (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW V0f) mono_2Ec_2Enum_2E0) V1x) V1x)) (forall ((V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V3n mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral__bit_2ESFUNPOW V2f))) (= ((_let_1 (mono_2Ec_2Enum_2ESUC V3n)) V4x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V4x)) mono_2Ec_2Enum_2E0) ((_let_1 V3n) (V2f V4x))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (and (= (_let_2 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_1)) c_2Elist_2ENIL_2E0))) (_let_2 c_2Elist_2ENIL_2E0)) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V0h_2E0))) (= (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_5) _let_3)))) (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_5) (_let_4 (c_2Elist_2EFLAT_2E1 _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_6 ((s _let_5) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2Eoption__CASE_2E0)) _let_6))) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0a_2E0 u) (V1f_2E0 u) (V2f1_2E0 u)) (let ((_let_1 ((s A_27a) V0a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27d)) V1f_2E0))) (let ((_let_3 (s A_27d))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (= (_let_3 (((c_2Einftree_2Einftree__CASE_2E3 ((s _let_4) (c_2Einftree_2EiLf_2E1 _let_1))) _let_2) ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27c) _let_4)) A_27d))) V2f1_2E0))) (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((V3b_2E0 u) (V4d_2E0 u) (V5f_2E0 u) (V6f1_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) V4d_2E0))) (let ((_let_4 ((s A_27b) V3b_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27d))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V6f1_2E0))) (let ((_let_7 (s A_27d))) (= (_let_7 (((c_2Einftree_2Einftree__CASE_2E3 ((s _let_1) ((c_2Einftree_2EiNd_2E2 _let_4) _let_3))) ((s ((tyop_2Emin_2Efun A_27a) A_27d)) V5f_2E0)) _let_6)) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ewellorder_2Ewobound_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Ewellorder_2Ewobound_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)))) (= (_let_2 (c_2Elist_2EFRONT_2E1 (_let_2 (_let_4 _let_3)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (_let_2 c_2Elist_2ENIL_2E0)) (_let_2 (_let_4 (_let_2 (c_2Elist_2EFRONT_2E1 _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 _let_3))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ecombin_2EK_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2EK_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 (_let_2 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1)))) (_let_4 ((app_2E2 _let_3) ((s A_27a) (_let_2 _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EEncode_2Eencode__list_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EEncode_2Eencode__list_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V9v7_2E0 u) (V10v6_2E0 u) (V11f_2E0 u) (V12a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V12a_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_1 ((((c_2Elist_2EFOLDL2_2E4 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V11f_2E0)) _let_2) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27b) V10v6_2E0)) (_let_3 V9v7_2E0)))) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) _let_2))))) (forall ((V6f_2E0 u) (V7cs_2E0 u) (V8a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8a_2E0))) (= (_let_1 ((((c_2Elist_2EFOLDL2_2E4 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V6f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27c)) V7cs_2E0))) _let_2)))) (forall ((V0f_2E0 u) (V1cs_2E0 u) (V2c_2E0 u) (V3bs_2E0 u) (V4b_2E0 u) (V5a_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V1cs_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V3bs_2E0))) (let ((_let_5 ((s A_27c) V2c_2E0))) (let ((_let_6 ((s A_27b) V4b_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V5a_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_10 ((tyop_2Emin_2Efun A_27b) _let_9))) (let ((_let_11 ((s ((tyop_2Emin_2Efun A_27a) _let_10)) V0f_2E0))) (let ((_let_12 (c_2Elist_2EFOLDL2_2E4 _let_11))) (= (_let_7 (((_let_12 _let_8) (_let_3 ((c_2Elist_2ECONS_2E2 _let_6) _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_2)))) (_let_7 (((_let_12 (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 _let_11) _let_8))) _let_6))) _let_5))) _let_4) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0 (-> Bool mono_2Etyop_2Enum_2Enum Bool)) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 ((s _let_5) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 X0)))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (not false) (forall ((A_27a d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V1H_2E0 u)) (=> (forall ((V2f_2E0 u) (V3g_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0_3C_3C_2E0)) _let_2))) (_let_1 V4x_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V3g_2E0)) _let_2)))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V2f_2E0)))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 (_let_4 (_let_3 V3g_2E0)))) _let_1))))))))))) (forall ((V6f_2E0 u) (V7g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (forall ((V9x_2E0 u)) (let ((_let_1 ((s A_27a) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7g_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1)))))))))) (forall ((V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V6f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1))))))))))) (= (_let_1 V6f_2E0) (_let_1 V7g_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3f2_2E0 u) (V5p_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V5p_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_5 ((s _let_4) V3f2_2E0))) (let ((_let_6 (_let_1 A_27d))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F1_2E0)) _let_5))) _let_3)) (_let_7 ((c_2Epair_2E_2C_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_3))) ((s A_27d) ((app_2E2 _let_5) ((s A_27b) (c_2Epair_2ESND_2E1 _let_3)))))))))))))))) (=> (forall ((V2f1_2E0 u) (V4p_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V4p_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) V2f1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_2)) (_let_6 ((c_2Epair_2E_2C_2E2 ((s A_27c) ((app_2E2 _let_4) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 (c_2Epair_2E_2C_2E2 _let_4))) (let ((_let_6 (tyop_2Epair_2Eprod _let_3))) (let ((_let_7 (tyop_2Epair_2Eprod A_27a))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((s (tyop_2Elist_2Elist _let_8)) (c_2Elist_2EZIP_2E1 ((s (_let_6 _let_1)) (_let_5 _let_2)))))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_11 ((s _let_10) V2f1_2E0))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_13 (tyop_2Emin_2Efun _let_8))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 (s (tyop_2Elist_2Elist _let_12)))) (let ((_let_16 (tyop_2Elist_2Elist A_27c))) (let ((_let_17 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_18 ((s _let_17) V3f2_2E0))) (let ((_let_19 (_let_7 A_27d))) (let ((_let_20 (_let_13 _let_19))) (let ((_let_21 (s (tyop_2Elist_2Elist _let_19)))) (let ((_let_22 (tyop_2Elist_2Elist A_27d))) (let ((_let_23 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_23 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_23 (c_2Elist_2ELENGTH_2E1 _let_2)))) (and (= (_let_21 (c_2Elist_2EZIP_2E1 ((s (_let_6 _let_22)) (_let_5 ((s _let_22) ((c_2Elist_2EMAP_2E2 _let_18) _let_2)))))) (_let_21 ((c_2Elist_2EMAP_2E2 ((s _let_20) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_17) _let_20)) F1_2E0)) _let_18))) _let_9))) (= (_let_15 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_16) _let_1)) ((c_2Epair_2E_2C_2E2 ((s _let_16) ((c_2Elist_2EMAP_2E2 _let_11) _let_4))) _let_2)))) (_let_15 ((c_2Elist_2EMAP_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_14)) F0_2E0)) _let_11))) _let_9)))))))))))))))))))))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 (((c_2Elist_2EINDEX__FIND_2E3 _let_5) _let_4) _let_2)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) c_2Elist_2EINDEX__FIND_2E0)) _let_5))) _let_4))) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Elist_2EINDEX__OF_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Elist_2EINDEX__OF_2E0)) _let_1))))))) (forall ((A_27a d) (V0P_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (= (forall ((V3l_2E0 u)) (=> (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V3l_2E0)))) V1n) (forall ((V4x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4x_2E0)) (_let_2 V3l_2E0))))))))))) (forall ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2l_2E0))) (=> (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Enum_2ESUC V1n)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ls_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_5 V2l_2E0)) _let_2)))) (let ((_let_7 (c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))))) (and (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0n))))) _let_6)) (_let_5 (_let_7 _let_2))) (= (_let_5 (_let_7 _let_6)) (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE _let_3)))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s _let_3))) (= (_let_9 ((c_2Elist_2EsplitAtPki_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Elist_2EsplitAtPki_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)))) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))) (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ELIST__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u) (V2m_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3p_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_4))) (let ((_let_6 (_let_1 V1n_2E0))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_4))) (= (_let_1 ((_let_5 (_let_1 ((_let_7 _let_6) _let_3))) _let_2)) (_let_1 ((_let_7 (_let_1 ((_let_5 _let_6) _let_2))) (_let_1 ((_let_5 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (or (exists ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0ll_2E0) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V1x_2E0)) (_let_1 V2l_2E0)))))) (= (_let_1 V0ll_2E0) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((A_27a d)) (and (forall ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (= (= _let_3 (_let_1 c_2Elist_2ENIL_2E0)) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)) _let_2)))))) (forall ((V6l1_2E0 u) (V7l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V7l2_2E0))) (let ((_let_3 (_let_1 V6l1_2E0))) (= (= _let_3 (_let_1 c_2Elist_2ENIL_2E0)) (= _let_2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))) (forall ((V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l2_2E0))) (let ((_let_3 (_let_1 V4l1_2E0))) (= (= _let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (= (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)) _let_3) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))) (let ((_let_6 (_let_4 c_2Epred__set_2EEMPTY_2E0))) (and (= (= _let_5 _let_6) _let_3) (= (= _let_6 _let_5) _let_3))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l1_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 (_let_1 V0l1_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 (_let_1 V1l1_27_2E0))))) (forall ((V2l2_2E0 u) (V3l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_27_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (_let_1 V3l2_27_2E0))) (let ((_let_5 (_let_1 V2l2_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_4)))) (= (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_5)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))) (and (= _let_5 _let_4) (= _let_3 _let_2))))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_2)))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) V1l2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_3)) ((c_2Epair_2E_2C_2E2 _let_2) _let_4))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a))) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2P_2E0 u) (V3P_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1))))))))) (= _let_5 _let_2)) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEXISTS_2E2 (_let_3 V2P_2E0)) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEXISTS_2E2 (_let_3 V3P_27_2E0)) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1m_2E0 u) (V2n_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3p_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (let ((_let_4 ((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_3) (_let_1 V1m_2E0)))) (let ((_let_5 (_let_1 V2n_2E0))) (let ((_let_6 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_3))) (= (_let_1 (_let_4 (_let_1 ((_let_6 _let_5) _let_2)))) (_let_1 ((_let_6 (_let_1 (_let_4 _let_5))) (_let_1 (_let_4 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0bs_2E0 u) (V1b_2E0 u) (V2as_2E0 u) (V3a_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V2as_2E0))) (let ((_let_5 ((s A_27a) V3a_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) V4R_2E0))) (let ((_let_8 (c_2Elist_2ELIST__REL_2E3 _let_7))) (let ((_let_9 (_let_8 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 V0bs_2E0))) (let ((_let_12 ((s A_27b) V1b_2E0))) (let ((_let_13 (_let_1 ((c_2Elist_2ECONS_2E2 _let_12) _let_11)))) (let ((_let_14 (_let_8 (_let_3 c_2Elist_2ENIL_2E0)))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_14 _let_2))) mono_2Ec_2Ebool_2ET) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_13))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_5))) _let_12))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_8 _let_4) _let_11))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_14 _let_13))) mono_2Ec_2Ebool_2EF) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_2))) mono_2Ec_2Ebool_2EF))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EOPT__MMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EOPT__MMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27d) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1l2_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0l1_2E0))) (let ((_let_8 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Elist_2ELENGTH_2E1 _let_7))) (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Elist_2ELENGTH_2E1 _let_4)))) (= (and (= _let_7 (_let_6 c_2Elist_2ENIL_2E0)) (= _let_4 (_let_3 c_2Elist_2ENIL_2E0))) (= (_let_1 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_5) _let_2)) ((c_2Epair_2E_2C_2E2 _let_7) _let_4)))) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Elist_2EMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2EMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d)) (and (forall ((V0i mono_2Etyop_2Enum_2Enum) (V1P_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))))) (= (_let_1 (((c_2Elist_2EINDEX__FIND_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0i))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((V2i mono_2Etyop_2Enum_2Enum) (V3P_2E0 u) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 ((s A_27a) V4h_2E0))) (let ((_let_8 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2i)))) (= (_let_6 (((c_2Elist_2EINDEX__FIND_2E3 _let_8) _let_3) (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2)))) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_7))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_8) _let_7))))) (_let_6 (((c_2Elist_2EINDEX__FIND_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2i)))) _let_3) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EEncode_2Eencode__prod_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EEncode_2Eencode__prod_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((s (_let_1 A_27a)) V0f_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))))) (_let_3 ((c_2Epred__set_2EIMAGE_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V1n)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_1))))))))))) (= (_let_292 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum)) (_let_292 c_2Elist_2EGENLIST_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4Q_2E0 u) (V2g_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 ((s A_27b) V9y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) V2g_2E0))) (let ((_let_5 ((s A_27c) V8x_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27c))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 ((s _let_8) V4Q_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_3) _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) F1_2E0)) _let_9))) _let_4))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_6) ((app_2E2 _let_9) _let_5))) ((s A_27d) ((app_2E2 _let_4) _let_1)))))))))))))))))))) (=> (forall ((V5P_2E0 u) (V3f_2E0 u) (V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((s A_27c) V6x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V3f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((s _let_7) V5P_2E0))) (let ((_let_9 (s _let_6))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_3 _let_6))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_5))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) ((s A_27a) ((app_2E2 _let_5) _let_2))))) _let_1))))))))))))))))) (forall ((V0l2_2E0 u) (V1l1_2E0 u) (V2g_2E0 u) (V3f_2E0 u) (V4Q_2E0 u) (V5P_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27c)) V1l1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V3f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((s _let_8) V5P_2E0))) (let ((_let_10 (_let_3 _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s _let_10))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (let ((_let_14 (_let_6 A_27d))) (let ((_let_15 ((s _let_14) V2g_2E0))) (let ((_let_16 (_let_3 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)))) (let ((_let_17 ((s _let_16) V4Q_2E0))) (let ((_let_18 ((tyop_2Emin_2Efun _let_14) _let_10))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 _let_17) _let_2) ((s (tyop_2Elist_2Elist A_27d)) ((c_2Elist_2EMAP_2E2 _let_15) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 (_let_12 ((app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_16) _let_18)) F1_2E0)) _let_17))) _let_15))) _let_2) _let_1)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 _let_9) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_5) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 (_let_12 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_5))) _let_2) _let_1))))))))))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (_let_4 (c_2Elist_2ESET__TO__LIST_2E1 _let_3)) (_let_4 (((c_2Ebool_2ECOND_2E3 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (_let_4 c_2Elist_2ENIL_2E0)) (_let_4 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_3))) (_let_4 (c_2Elist_2ESET__TO__LIST_2E1 (_let_2 (c_2Epred__set_2EREST_2E1 _let_3)))))))))))))))))) (and (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1rst mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Estring_2EDEST__STRING ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c) V1rst)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0c) V1rst)))) (= (mono_2Ec_2Estring_2EDEST__STRING mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27d)) (_let_3 A_27c)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EreaderMonad_2EFMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EreaderMonad_2EFMAP_2E0)) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (= _let_3 (_let_2 c_2Elist_2ENIL_2E0))))))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0h_2E0))) (= (_let_4 (c_2Elist_2ELAST_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_5) _let_3)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) _let_5) (_let_4 (c_2Elist_2ELAST_2E1 _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (=> (not (= (_let_1 V0l1_2E0) (_let_1 V1l2_2E0))) (forall ((V2h1_2E0 u) (V3h2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (not (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2h1_2E0)) (_let_1 V0l1_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3h2_2E0)) (_let_1 V1l2_2E0))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epred__set_2EDISJOINT_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0M_2E0 u) (V1N_2E0 u) (V2f_2E0 u) (V3f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1N_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_1 V0M_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1N_2E0)))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V2f_2E0)) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V3f_27_2E0)) _let_1))))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Elist_2Elist__size_2E2 (_let_3 V2f_2E0)) _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Elist_2Elist__size_2E2 (_let_3 V3f_27_2E0)) _let_2))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (and (= (_let_1 ((c_2Elist_2EMAP_2E2 (_let_3 F0_2E0)) _let_2)) _let_2) (= (_let_1 ((c_2Elist_2EMAP_2E2 (_let_3 c_2Ecombin_2EI_2E0)) _let_2)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecombin_2EK_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecombin_2EK_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_6) _let_5))) (= (_let_2 (((c_2Elist_2EsplitAtPki_2E3 _let_9) _let_7) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_10)) c_2Elist_2EsplitAtPki_2E0)) _let_9))) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_4 (c_2Elist_2EdropWhile_2E2 _let_3))) (let ((_let_5 (_let_1 V1l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 _let_3) _let_5))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EoHD_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EoHD_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s2_2E0))) (let ((_let_4 (_let_2 V1s1_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (= (_let_5 (c_2Ebag_2EBIG__BAG__UNION_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)))) (_let_5 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_5 ((c_2Ebag_2EBAG__UNION_2E2 (_let_5 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_4))) (_let_5 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_3))))) (_let_5 (c_2Ebag_2EBIG__BAG__UNION_2E1 (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V2x_2E0)) _let_2)))) (_let_1 (_let_4 _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EerrorStateMonad_2EUNIT_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0b Bool)) (= (mono_2Ec_2Elist_2ELIST__GUARD V0b) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V0b) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Eone_2Eone)) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Eone_2Eone))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1l_2E0))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2Q_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2Q_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 (_let_4 V1P_2E0))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_3))) (let ((_let_10 (_let_9 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) F0_2E0)) _let_7))) _let_5))) _let_1))) (= (_let_6 ((app_2E2 _let_7) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1))))))))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 _let_4))) (=> (forall ((V3fv_2E0 u)) (let ((_let_1 ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0))))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_3 (s A_27c))) (not (= (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) (_let_3 V1P_2E0)))) (_let_3 V2Q_2E0)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_3) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1)))))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_3 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V2x_2E0)) _let_2)))) (_let_1 (_let_3 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (A_27h d)) (and (forall ((V0P_2E0 u) (V1ys_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V1ys_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) _let_2))) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V10P_2E0 u) (V11xxs_2E0 u) (V12y_2E0 u) (V13ys_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27h)))) (= (exists ((V14x_2E0 u) (V15xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27g)))) (let ((_let_2 (_let_1 V15xs_2E0))) (let ((_let_3 ((s A_27g) V14x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27h) tyop_2Emin_2Ebool))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27g) _let_4)) V10P_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) ((s A_27h) V12y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 _let_5) _let_2) ((s (tyop_2Elist_2Elist A_27h)) V13ys_2E0)))) (= (_let_1 V11xxs_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27g) ((tyop_2Emin_2Efun A_27h) tyop_2Emin_2Ebool))) V10P_2E0)) ((s (tyop_2Elist_2Elist A_27g)) V11xxs_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27h) V12y_2E0)) (_let_1 V13ys_2E0))))))))) (forall ((V8P_2E0 u) (V9xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27e)))) (let ((_let_2 (_let_1 V9xs_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27e) ((tyop_2Emin_2Efun A_27f) tyop_2Emin_2Ebool))) V8P_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27f)) c_2Elist_2ENIL_2E0)))) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V2P_2E0 u) (V3yys_2E0 u) (V4x_2E0 u) (V5xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (= (exists ((V6y_2E0 u) (V7ys_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27d)))) (let ((_let_2 (_let_1 V7ys_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) V2P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27d) V6y_2E0))) (and (= (_let_1 V3yys_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) ((s A_27c) V4x_2E0)))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2ELIST__REL_2E3 _let_4) ((s (tyop_2Elist_2Elist A_27c)) V5xs_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) V2P_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27c) V4x_2E0)) (_let_1 V5xs_2E0)))) ((s (tyop_2Elist_2Elist A_27d)) V3yys_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u) (V1P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2)) _let_2) (forall ((V3h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 _let_3))) (let ((_let_5 ((s A_27a) V3h_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_5)))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (forall ((V2h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 _let_3))) (let ((_let_5 ((s A_27a) V2h_2E0))) (let ((_let_6 (c_2Elist_2ECONS_2E2 _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_5))) (= (_let_1 (_let_4 (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 (_let_4 _let_2))))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ewellorder_2EelsOf_2E0)) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2l2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_5))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1xs_2E0 u) (V2ys_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V2ys_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27b)) V1xs_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V0f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_5 (((c_2Elist_2ELIST__LIFT2_2E3 _let_4) _let_2) _let_1)) (_let_5 ((c_2Elist_2ELIST__APPLY_2E2 ((s (tyop_2Elist_2Elist _let_3)) ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_7 ((s _let_1) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2Elist__CASE_2E3 _let_7) _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) c_2Elist_2Elist__CASE_2E0)) _let_7))) _let_6))) _let_4)))))))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) V0m) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2)))) (_let_1 (_let_4 _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0xs_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F1_2E0)) _let_4))) _let_3))) ((s _let_6) V1r_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (forall ((V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0xs_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_2) _let_3))) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V1r_2E0))))) (= _let_3 _let_2))))))))))))))))))) (=> (forall ((V0xs_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0xs_2E0))) (let ((_let_7 ((s A_27a) V2x_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_4 _let_12))) (let ((_let_15 (_let_8 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_10 _let_15)) F0_2E0)) _let_6))) _let_3))) _let_7)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_7) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_4 _let_11)) F1_2E0)) _let_7))) _let_6))) _let_3))))))))))))))))))))) (forall ((V0xs_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0xs_2E0))) (let ((_let_8 (_let_4 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (= (_let_6 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_7) _let_3)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_7))) _let_3)))))))))))))))))) (forall ((A_27a d)) (and (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_6 (c_2Elist_2EdropWhile_2E2 _let_5))) (= (_let_1 (_let_6 _let_4)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_5) _let_3))) (_let_1 (_let_6 _let_2))) _let_4)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EdropWhile_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) _let_2)))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (forall ((V3ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3ls_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 V0P_2E0)) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 V1Q_2E0)) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Emin_2E_3D_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Emin_2E_3D_2E0)) _let_2))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3h1_2E0 u) (V6h2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6h2_2E0))) (let ((_let_3 (_let_1 V3h1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))) (=> (forall ((V2R_2E0 u) (V3h1_2E0 u) (V4t1_2E0 u) (V6h2_2E0 u) (V7t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t2_2E0))) (let ((_let_4 (_let_2 V4t1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V2R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (s A_27a))) (let ((_let_12 (_let_11 V6h2_2E0))) (let ((_let_13 (_let_11 V3h1_2E0))) (let ((_let_14 (s _let_6))) (let ((_let_15 (tyop_2Emin_2Efun _let_1))) (let ((_let_16 (_let_15 tyop_2Emin_2Ebool))) (let ((_let_17 (_let_5 _let_16))) (let ((_let_18 (_let_15 _let_17))) (let ((_let_19 (_let_5 _let_18))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_19)) F0_2E0)) _let_9))) _let_13))) _let_4))) _let_12))) _let_3))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_14 ((app_2E2 _let_9) _let_13))) _let_12)))) mono_2Ec_2Ebool_2ET) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_14 ((app_2E2 (_let_8 F1_2E0)) _let_13))) _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Elist_2ELLEX_2E3 _let_9) _let_4) _let_3)))) mono_2Ec_2Ebool_2EF))))))))))))))))))))))) (and (forall ((V0R_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (not (= _let_2 _let_3)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELLEX_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) _let_2))))))))) (forall ((V2R_2E0 u) (V3h1_2E0 u) (V4t1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4t1_2E0))) (let ((_let_4 ((s A_27a) V3h1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) V2R_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_5 (_let_8 tyop_2Emin_2Ebool)))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (_let_5 _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_2 V5l2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Elist_2ELLEX_2E3 _let_7) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) _let_13))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Elist_2Elist__CASE_2E3 _let_13) (_let_12 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_4))) _let_3)))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (= (_let_290 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_290 c_2Epair_2E_2C_2E0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_1 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) F0_2E0)) _let_3))) _let_4)) (_let_7 ((c_2Epair_2E_2C_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) _let_4))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))))))))))))) (forall ((V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_6 V0r_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eset__relation_2Elinear__order_2E2 (_let_6 ((c_2Epred__set_2EUNION_2E2 _let_7) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))))))) _let_3))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (c_2Elist_2ELAST_2E1 (_let_3 ((c_2Elist_2ECONS_2E2 _let_2) (_let_3 c_2Elist_2ENIL_2E0))))) _let_2))))) (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2y_2E0)) (_let_1 V3z_2E0))))) (= (_let_2 (c_2Elist_2ELAST_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1x_2E0)) _let_3)))) (_let_2 (c_2Elist_2ELAST_2E1 _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (F1_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V4t1_2E0 u) (V7t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V4t1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_5))) _let_3))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))))))))) (=> (forall ((V3h1_2E0 u) (V6h2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6h2_2E0))) (let ((_let_3 (_let_1 V3h1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F2_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (=> (forall ((V4t1_2E0 u) (V2R_2E0 u) (V3h1_2E0 u) (V6h2_2E0 u) (V7t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t2_2E0))) (let ((_let_4 (_let_2 V4t1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V2R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (s A_27a))) (let ((_let_12 (_let_11 V6h2_2E0))) (let ((_let_13 (_let_11 V3h1_2E0))) (let ((_let_14 (s _let_6))) (let ((_let_15 (tyop_2Emin_2Efun _let_1))) (let ((_let_16 (_let_15 tyop_2Emin_2Ebool))) (let ((_let_17 (s _let_16))) (let ((_let_18 (s tyop_2Enum_2Enum))) (let ((_let_19 (_let_5 _let_16))) (let ((_let_20 (_let_5 _let_19))) (let ((_let_21 ((tyop_2Emin_2Efun _let_7) _let_20))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_17 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s (_let_15 _let_21)) F0_2E0)) _let_4))) _let_9))) _let_13))) _let_12))) _let_3))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_18 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_18 (c_2Elist_2ELENGTH_2E1 _let_3))))) mono_2Ec_2Ebool_2ET) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_17 ((app_2E2 ((s (_let_15 _let_16)) F1_2E0)) _let_4))) _let_3)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_14 ((app_2E2 _let_9) _let_13))) _let_12)))) mono_2Ec_2Ebool_2ET) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_14 ((app_2E2 (_let_8 F2_2E0)) _let_13))) _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Elist_2ESHORTLEX_2E3 _let_9) _let_4) _let_3)))) mono_2Ec_2Ebool_2EF))) mono_2Ec_2Ebool_2EF))))))))))))))))))))))))) (and (forall ((V2R_2E0 u) (V3h1_2E0 u) (V4t1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 ((s A_27a) V3h1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V2R_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4t1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_5))) (let ((_let_9 (_let_2 (_let_8 tyop_2Emin_2Ebool)))) (let ((_let_10 (_let_2 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_6 V5l2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Elist_2ESHORTLEX_2E3 _let_4) (_let_6 ((c_2Elist_2ECONS_2E2 _let_1) _let_7))) _let_13))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Elist_2Elist__CASE_2E3 _let_13) (_let_12 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_8 _let_11)) F0_2E0)) _let_7))) _let_4))) _let_1)))))))))))))))))))) (forall ((V0R_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ESHORTLEX_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_2) _let_3))) (not (= _let_3 _let_2))))))))))))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V2a V0t))) (let ((_let_2 (not _let_1))) (=> (V1b V0t) (and (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t) _let_1) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1b) V2a) V0t) _let_2) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V1b) V0t) _let_1) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V1b) V0t) mono_2Ec_2Ebool_2ET) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V2a) V0t) _let_2) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1b) V2a) V0t) _let_2) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V1b) V0t) mono_2Ec_2Ebool_2ET) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V1b) V0t) _let_1) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a) V1b) V0t) mono_2Ec_2Ebool_2ET) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t) _let_1) (= _let_2 (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V2a) V0t)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t) mono_2Ec_2Ebool_2ET)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X3)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (tyop_2Epair_2Eprod A_27a))) (let ((_let_7 (_let_3 (tyop_2Eoption_2Eoption (_let_6 _let_1))))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_6 A_27b))) (let ((_let_10 ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool))) (let ((_let_11 ((s _let_10) X0_2E0))) (let ((_let_12 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_9) _let_1)))) (let ((_let_13 (_let_3 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_4) _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_7) _let_14))) (let ((_let_16 (s _let_12))) (= (_let_16 ((((c_2EDecode_2Edecode__prod_2E4 _let_11) _let_8) _let_5) _let_2)) (_let_16 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_15)) c_2EDecode_2Edecode__prod_2E0)) _let_11))) _let_8))) _let_5))) _let_2)))))))))))))))))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1ll2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0ll1_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_2))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1L_2E0 u)) (= (exists ((V2L1_2E0 u) (V3L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3L2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s A_27a) V0e_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2L1_2E0))) (and (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_7) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) (_let_1 c_2Elist_2ENIL_2E0)))))) _let_2)) (_let_1 V1L_2E0)) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_7)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EUNIQUE_2E2 ((s A_27a) V0e_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1L_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (((c_2Elist_2EMAP2_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V0x_2E0)) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V2g_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (forall ((V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3x)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3x) V0n) (= (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V2g_2E0)) _let_1)))))))) (= (_let_3 ((c_2Elist_2EGENLIST_2E2 (_let_2 V1f_2E0)) _let_1)) (_let_3 ((c_2Elist_2EGENLIST_2E2 (_let_2 V2g_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_4 ((c_2Elist_2ELIST__BIND_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_1) (_let_5 c_2Elist_2ENIL_2E0)))) _let_3)) (_let_4 ((app_2E2 _let_3) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ebag_2Emlt1_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Ebag_2Emlt1_2E0)) _let_3)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 c_2Elist_2ENIL_2E0)) _let_2)) _let_2)))) (forall ((V1l1_2E0 u) (V2l2_2E0 u) (V3h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27state) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27d) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0xs2_2E0 u) (V1P_2E0 u) (V2xs1_2E0 u) (V3zs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) V1P_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V3zs_2E0)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2xs1_2E0)) (_let_1 V0xs2_2E0)))))) (exists ((V4ys1_2E0 u) (V5ys2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 (_let_2 V5ys2_2E0))) (let ((_let_4 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) V1P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 V4ys1_2E0))) (and (= (_let_2 V3zs_2E0) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 _let_6) (_let_1 V2xs1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 _let_3) (_let_1 V0xs2_2E0))))))))))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Eone_2Eone)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Eone_2Eone V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d)) (and (forall ((V1f_2E0 u) (V2a0_2E0 u) (V3a1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3a1_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1f_2E0))) (let ((_let_4 (c_2Elist_2Elist__size_2E2 _let_3))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((s A_27a) V2a0_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_3) _let_6)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_2))))))))))))) (forall ((V0f_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Elist_2Elist__size_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (= (or (exists ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_2 V3t_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))) (exists ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1l_2E0))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Epred__set_2EREST_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2EREST_2E0)) _let_3))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0l1_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2))) _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 (_let_2 (c_2Elist_2Enub_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 (_let_2 (c_2Elist_2Enub_2E1 _let_4)))))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 (_let_2 (c_2Elist_2Enub_2E1 (_let_2 ((c_2Elist_2EFILTER_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_4))) _let_3)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_3 V0f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0f_2E0 u) (V1g_2E0 u) (V2ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_6 (_let_3 V0f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_5 ((c_2Elist_2EMAP_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1)))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_5 ((c_2Elist_2EMAP_2E2 _let_6) _let_1))))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_5 ((c_2Elist_2EMAP_2E2 _let_4) _let_1))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (= (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Eoption_2EOPTION__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n))))) _let_2)) _let_2)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V2n))))) _let_2)) _let_2)))) (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7h_2E0 u) (V8t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V8t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6n))))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27c) V7h_2E0)) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n))))) _let_2))))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V5t_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27c) V4h_2E0)) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((A_27a d) (V0a1_2E0 u) (V1a0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 c_2Elist_2ENIL_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1a0_2E0)) (_let_1 V0a1_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27c)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EMAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EMAP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0t2_2E0 u) (V1t1_2E0 u) (V2h2_2E0 u) (V3h1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V4R_2E0))) (let ((_let_6 (c_2Elist_2ESHORTLEX_2E3 _let_5))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V1t1_2E0))) (let ((_let_10 (s A_27a))) (let ((_let_11 (_let_10 V3h1_2E0))) (let ((_let_12 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 _let_11) _let_9))))) (let ((_let_13 (_let_1 V0t2_2E0))) (let ((_let_14 (s tyop_2Enum_2Enum))) (let ((_let_15 (j_mono_2Etyop_2Enum_2Enum (_let_14 (c_2Elist_2ELENGTH_2E1 _let_13))))) (let ((_let_16 (j_mono_2Etyop_2Enum_2Enum (_let_14 (c_2Elist_2ELENGTH_2E1 _let_9))))) (let ((_let_17 (_let_10 V2h2_2E0))) (let ((_let_18 (_let_1 ((c_2Elist_2ECONS_2E2 _let_17) _let_13)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_18))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_12 _let_18))) (or (and (= _let_16 _let_15) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_11))) _let_17))) (and (= _let_11 _let_17) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_6 _let_9) _let_13)))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_16) _let_15))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_12 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))))))))))))))))))))))) (forall ((A_27a d)) (and (forall ((V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_4 (c_2Elist_2EGENLIST_2E2 _let_3))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_5 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n))))) (_let_5 ((c_2Elist_2ESNOC_2E2 ((s A_27a) ((app_2E2 _let_3) _let_2))) (_let_5 (_let_4 _let_2))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= ((F3 V2a) V8t) (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V8t) (V2a V8t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V15t) (V2a V15t)) ((F10 V2a) V15t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V14t) (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V14t))) ((F9 V2a) V14t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V13t) (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V13t))) ((F8 V1b) V13t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V12t) (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V12t))) ((F7 V1b) V12t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V11t) (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V11t))) ((F6 V1b) V11t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((F5 V1b) V10t) (and (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V10t)) (V1b V10t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= ((F4 V2a) V9t) (and (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V9t)) (V2a V9t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (((F2 V2a) V1b) V5t) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V5t) (V1b V5t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V4t) (V1b V4t)) (((F1 V2a) V1b) V4t))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ENEXT V2a))) (let ((_let_2 (mono_2Ec_2ETemporal__Logic_2ENEXT V1b))) (let ((_let_3 (_let_2 V0t))) (let ((_let_4 (V2a V0t))) (let ((_let_5 (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a))) (let ((_let_6 (mono_2Ec_2ETemporal__Logic_2EWHEN V2a))) (let ((_let_7 (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b))) (let ((_let_8 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a))) (let ((_let_9 (mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a))) (let ((_let_10 (mono_2Ec_2ETemporal__Logic_2EUNTIL V2a))) (let ((_let_11 (mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a))) (let ((_let_12 (mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a))) (let ((_let_13 (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1b))) (let ((_let_14 (mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a))) (let ((_let_15 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a))) (let ((_let_16 (mono_2Ec_2ETemporal__Logic_2EBEFORE V2a))) (let ((_let_17 (mono_2Ec_2ETemporal__Logic_2ESWHEN V2a))) (and (= (mono_2Ec_2ETemporal__Logic_2EEVENTUAL _let_1) (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V2a))) (= (_let_8 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESUNTIL _let_5) V1b))) (= (_let_17 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESWHEN _let_5) V1b))) (= (_let_9 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESBEFORE _let_5) V1b))) (= (_let_10 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EUNTIL _let_5) V1b))) (= (_let_16 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EBEFORE _let_5) V1b))) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_17 _let_7))) (= ((mono_2Ec_2ETemporal__Logic_2EWHEN _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_6 _let_7))) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_16 _let_7))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V6x) (V2a V6x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2ETemporal__Logic_2ENEXT V2a)) V6x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT (mono_2Ec_2ETemporal__Logic_2ENEXT V2a)) V7x) (and (V2a V7x) (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V7x))))) (= (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS _let_1) (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F3 V2a)))) (= (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL _let_1) (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL (F4 V2a)))) (= (_let_15 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL _let_5) (F5 V1b)))) (= (_let_14 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE _let_5) (F8 V1b)))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_15 _let_13))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_11 _let_13))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_12 _let_13))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_14 _let_13))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL (F10 V2a)) _let_7))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (F9 V2a)) _let_7))) (= (_let_12 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN _let_5) (F7 V1b)))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL _let_5) V1b))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V2a)) V1b))) (= (_let_11 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN _let_5) (F6 V1b)))) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_10 _let_7))) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_9 _let_7))) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL _let_1) V1b) (mono_2Ec_2ETemporal__Logic_2ENEXT (_let_8 _let_7))) (= (_let_6 _let_2) (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2EWHEN _let_5) V1b))) (= (mono_2Ec_2ETemporal__Logic_2EALWAYS _let_1) (mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EALWAYS V2a))) (= (or _let_3 _let_4) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F2 V2a) V1b)) V0t)) (= (and _let_4 _let_3) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F1 V2a) V1b)) V0t)) (= (not (_let_1 V0t)) ((mono_2Ec_2ETemporal__Logic_2ENEXT (F0 V2a)) V0t))))))))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2ENULL_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Equotient_2Erespects_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Equotient_2Erespects_2E0)) _let_5))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Elist_2ESHORTLEX_2E3 _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Elist_2ESHORTLEX_2E0)) _let_7))) _let_4))) _let_3)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Elist_2ELEN_2E2 _let_2) (_let_4 (i_mono_2Etyop_2Enum_2Enum X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELEN_2E0)) _let_2))) X1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2ESND_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2ESND_2E0)) _let_3)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u) (V2y_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V0l_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 (_let_4 (((c_2Elist_2ELUPDATE_2E3 _let_2) (_let_6 (i_mono_2Etyop_2Enum_2Enum V3i))) _let_5))))))) (or (exists ((V4j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s A_27a))) (and (not (= V3i V4j)) (= (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V4j))) _let_1)) (_let_3 V1x_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C V4j) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (and ((mono_2Ec_2Eprim__rec_2E_3C V3i) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_5)))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_4) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D _let_4) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (F0 V1n))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) _let_2)))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)) _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_4)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1n)))) _let_4) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (= (_let_289 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Emin_2Ebool)) (_let_289 c_2EDecode_2Ewf__decoder_2E0)) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 _let_1))))))) (forall ((A_27a d) (V0c_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2s_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s A_27a) V0c_2E0))) (= (_let_1 (((c_2Elist_2EPAD__RIGHT_2E3 _let_4) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) (c_2Ecombin_2EK_2E1 _let_4))) (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (_let_3 c_2Elist_2ELENGTH_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27c))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (s (_let_6 _let_5)))) (let ((_let_8 (_let_7 V0f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 (c_2Ecombin_2Eo_2E2 ((s (_let_9 tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)))) (let ((_let_11 (s (_let_6 tyop_2Enum_2Enum)))) (and (= (_let_11 (_let_10 (_let_7 ((c_2Ecombin_2Eo_2E2 ((s (_let_9 _let_5)) c_2Elist_2EREVERSE_2E0)) _let_8)))) (_let_11 (_let_10 _let_8))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 _let_1)) c_2Elist_2EREVERSE_2E0))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27e) A_27f))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 A_27d))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_7 _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_10))) (= (_let_13 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_9) _let_6) _let_3)) (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_9))) _let_6))) _let_3))))))))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 ((s (tyop_2Elist_2Elist A_27a)) V0xs_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V1n)))) (= (and (= _let_2 (_let_1 ((c_2Elist_2EEL_2E2 _let_6) _let_4))) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4))))) (= (_let_3 ((c_2Elist_2EoEL_2E2 _let_6) _let_4)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))))))) (= (_let_287 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Eone_2Eone)) (_let_287 c_2Elist_2ENIL_2E0)) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (or (exists ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) (_let_1 V2t_2E0)))))) (= (_let_1 V0l_2E0) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_9 (_let_5 _let_8))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EPSUB__BAG_2E2 _let_1) _let_1)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1LIST__REL_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (forall ((V2h1_2E0 u) (V3h2_2E0 u) (V4t1_2E0 u) (V5t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t2_2E0))) (let ((_let_4 ((s A_27b) V3h2_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4t1_2E0))) (let ((_let_8 ((s A_27a) V2h1_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) V1LIST__REL_27_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_13)) V0R_2E0)) _let_8))) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_6 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V1LIST__REL_27_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V6a0_2E0 u) (V7a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V7a1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V6a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V1LIST__REL_27_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EREV_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EREV_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_5 ((c_2Elist_2EGENLIST_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n))))) (_let_5 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_5 ((c_2Elist_2EGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s (tyop_2Elist_2Elist _let_2)))) (= (_let_4 ((c_2Elist_2ELIST__APPLY_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_3) (_let_5 c_2Elist_2ENIL_2E0)))) _let_1)) (_let_4 ((c_2Elist_2EMAP_2E2 _let_3) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Elist_2ELIST__REL_2E3 _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Elist_2ELIST__REL_2E0)) _let_7))) _let_4))) _let_3)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d)) (and (forall ((V1f_2E0 u) (V2h1_2E0 u) (V3t1_2E0 u) (V4h2_2E0 u) (V5t2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27e)))) (let ((_let_2 (_let_1 V5t2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27d)))) (let ((_let_4 (_let_3 V3t1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27e) A_27f))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27d) _let_5)) V1f_2E0))) (let ((_let_7 (c_2Elist_2EMAP2_2E3 _let_6))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27f)))) (let ((_let_9 ((s A_27e) V4h2_2E0))) (let ((_let_10 ((s A_27d) V2h1_2E0))) (= (_let_8 ((_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_10) _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_9) _let_2)))) (_let_8 ((c_2Elist_2ECONS_2E2 ((s A_27f) ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_10))) _let_9))) (_let_8 ((_let_7 _let_4) _let_2)))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (= (_let_1 (((c_2Elist_2EMAP2_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Eone_2Eone V0))) (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2))))) V0n)))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V2s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (((mono_2Ec_2EASCIInumbers_2Es2n V0b) V1f) V2s) ((mono_2Ec_2Enumposrep_2El2n V0b) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Enum_2Enum V1f) (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar V2s))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V0P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERYi_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s A_27a) V2h_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_4 V1P_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_8 (_let_7 V3t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERYi_2E2 _let_5) (_let_7 ((c_2Elist_2ECONS_2E2 _let_1) _let_8))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERYi_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 _let_5) ((s (_let_3 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_2) ((app_2E2 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) _let_1)))))))))))))))) (forall ((A_27a d) (V0m2_2E0 u) (V1m1_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u) (V4e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (or (exists ((V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (and (= (_let_1 V2l2_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V0m2_2E0)))) (= (_let_1 V1m1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V3l1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4e_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) _let_2))))))) (exists ((V6l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l_2E0))) (and (= (_let_1 V3l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1m1_2E0)) _let_2))) (= (_let_1 V0m2_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4e_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (_let_1 V2l2_2E0))))))))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V3l1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4e_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (_let_1 V2l2_2E0))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1m1_2E0)) (_let_1 V0m2_2E0))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0l_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3v1_2E0 u) (V4v2_2E0 u)) (let ((_let_1 ((s A_27a) V3v1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27b) V4v2_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_5))) (let ((_let_9 (_let_2 _let_8))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F1_2E0)) _let_4))) _let_1))) _let_7)) (_let_6 ((c_2Ellist_2ELCONS_2E2 _let_7) (_let_6 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1))))))))))))))) (=> (forall ((V0f_2E0 u) (V2v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 (_let_2 ((tyop_2Emin_2Efun A_27b) _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 ((s _let_1) V2v_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F0_2E0)) _let_4))) _let_8)) (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_8) ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F1_2E0)) _let_4)))))))))))))))) (forall ((V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (let ((_let_8 ((s A_27a) V1x_2E0))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_2) ((app_2E2 _let_4) _let_8))) (_let_7 c_2Ellist_2ELNIL_2E0)) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0l_2E0 u) (V1f_2E0 u) (V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3x)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s _let_5) V0l_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_1) _let_6))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0l_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V1f_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((s _let_6) V0l_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 (_let_3 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s (tyop_2Elist_2Elist _let_8)))) (let ((_let_12 (tyop_2Elist_2Elist A_27b))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_7))) V2n) (= (_let_11 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_6) _let_12)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_12) ((c_2Elist_2EGENLIST_2E2 _let_5) _let_2)))))) (_let_11 ((c_2Elist_2EGENLIST_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_5))) _let_2))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2)))) (= (_let_4 (_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (_let_4 (c_2Elist_2ETL_2E1 (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Erelation_2ETC_2E3 _let_9) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_7)) c_2Erelation_2ETC_2E0)) _let_9))) _let_4))) _let_3))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EoHD_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EoHD_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (and (forall ((V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1t_2E0)))) (forall ((V2h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_2 V1t_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3l_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s A_27b) V1h_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (and (= (_let_3 (c_2Elist_2EoHD_2E1 (_let_4 ((c_2Elist_2ECONS_2E2 _let_2) (_let_4 V0t_2E0))))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))) (= (_let_1 (c_2Elist_2EoHD_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u) (V3e_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 V2w_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3e_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_3 V0y_2E0))) (let ((_let_8 (_let_3 V1x_2E0))) (let ((_let_9 (c_2Ebool_2EIN_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_8) _let_7))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (and (not (= _let_7 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2))))))) (not (= _let_8 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_6 (c_2Eset__relation_2Estrict_2E1 (_let_6 (c_2Ewellorder_2Ewellorder__REP_2E1 (_let_1 ((c_2Ewellorder_2Eremove_2E2 _let_4) _let_2))))))))))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V0xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n)))) (= (_let_1 ((c_2Elist_2EoEL_2E2 _let_4) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))))) (_let_1 c_2Eoption_2ENONE_2E0))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (= (forall ((V1n mono_2Etyop_2Enum_2Enum)) (exists ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V2x_2E0))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1v_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_3 ((s _let_2) V1v_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2i)))) (_let_4 ((c_2Efcp_2Efcp__index_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V2i)))))))))))) (forall ((V0h_2E0 u) (V1v_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V1v_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (s (_let_1 A_27c)))) (let ((_let_6 ((s A_27a) V0h_2E0))) (= (_let_5 ((c_2Efcp_2EFCP__CONS_2E2 _let_6) _let_3)) (_let_5 (((c_2Efcp_2E_3A_2B_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_6) (_let_5 (c_2Efcp_2EFCP_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3)))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))))) (= V0n mono_2Ec_2Enum_2E0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 ((s A_27b) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((((c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E4 _let_8) _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__EXPAND__PRED_2E0)) _let_8))) _let_6))) _let_5))) _let_4)))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ESNOC_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (_let_7 _let_11))) (= (_let_5 ((((c_2Elist_2EFOLDL2_2E4 _let_9) _let_6) _let_4) _let_2)) (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2Elist_2EFOLDL2_2E0)) _let_9))) _let_6))) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Elist_2ELIST__LIFT2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Elist_2ELIST__LIFT2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EFIND_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EFIND_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_2) _let_1)))) (and (forall ((V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s ((tyop_2Epair_2Eprod _let_5) _let_4)))) (let ((_let_7 (_let_6 (c_2Elist_2EUNZIP_2E1 _let_3)))) (let ((_let_8 (s _let_4))) (let ((_let_9 ((s _let_1) V0x_2E0))) (let ((_let_10 (s _let_5))) (= (_let_6 (c_2Elist_2EUNZIP_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_9) _let_3)))) (_let_6 ((c_2Epair_2E_2C_2E2 (_let_10 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_9))) (_let_10 (c_2Epair_2EFST_2E1 _let_7))))) (_let_8 ((c_2Elist_2ECONS_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_9))) (_let_8 (c_2Epair_2ESND_2E1 _let_7)))))))))))))))))) (= (_let_3 (c_2Elist_2EUNZIP_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) c_2Elist_2ENIL_2E0))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s _let_2) c_2Elist_2ENIL_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ebit0 A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Efcp_2Ebit0__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2Ebit0__size_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R2_2E0 u) (V3R1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3R1_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R2_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ESHORTLEX_2E3 (_let_5 V3R1_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ESHORTLEX_2E3 (_let_5 V2R2_2E0)) _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3r_2E0 u) (V4s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4s_2E0))) (let ((_let_3 (_let_1 V3r_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s (_let_4 A_27b)) V1abs_2E0)))) (let ((_let_11 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_2))) (= (= (_let_11 (_let_10 _let_3)) (_let_11 (_let_10 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0L_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0L_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s ((tyop_2Epair_2Eprod _let_5) _let_4)))) (= (_let_6 (c_2Elist_2EUNZIP_2E1 _let_2)) (_let_6 ((c_2Epair_2E_2C_2E2 ((s _let_5) ((c_2Elist_2EMAP_2E2 ((s (_let_3 A_27a)) c_2Epair_2EFST_2E0)) _let_2))) ((s _let_4) ((c_2Elist_2EMAP_2E2 ((s (_let_3 A_27b)) c_2Epair_2ESND_2E0)) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R2_2E0 u) (V3R1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3R1_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R2_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELLEX_2E3 (_let_5 V3R1_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELLEX_2E3 (_let_5 V2R2_2E0)) _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0xs2_2E0 u) (V1P_2E0 u) (V2xs1_2E0 u) (V3zs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (exists ((V4ys1_2E0 u) (V5ys2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V5ys2_2E0))) (let ((_let_3 (_let_1 V4ys1_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_4 V2xs1_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_4 V0xs2_2E0)) _let_2))) (= (_let_1 V3zs_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1P_2E0)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2xs1_2E0)) (_let_1 V0xs2_2E0)))) ((s (tyop_2Elist_2Elist A_27b)) V3zs_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1B_2E0 u) (V2A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 ((c_2Epred__set_2EINSERT_2E2 ((s A_27b) V0x_2E0)) (_let_3 c_2Epred__set_2EEMPTY_2E0))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2A_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_2 (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_6) _let_4))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 _let_4) ((s (_let_1 tyop_2Emin_2Ebool)) V1B_2E0)))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u) (V4f_2E0 u) (V5f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l2_27_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_27_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_7 (_let_1 V2l2_2E0))) (let ((_let_8 (_let_3 V0l1_2E0))) (=> (and (= _let_7 _let_2) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((s A_27a) V6x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 _let_4)))) (let ((_let_7 (s _let_4))) (let ((_let_8 (s A_27c))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_5 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l1_27_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) V3l2_27_2E0))))))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V4f_2E0)) _let_2))) _let_1)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5f_27_2E0)) _let_2))) _let_1)))))))))))))) (= _let_8 _let_4)) (= (_let_6 (((c_2Elist_2EMAP2_2E3 (_let_5 V4f_2E0)) _let_8) _let_7)) (_let_6 (((c_2Elist_2EMAP2_2E3 (_let_5 V5f_27_2E0)) _let_4) _let_2))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27c))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (_let_7 _let_11))) (= (_let_5 ((((c_2Elist_2EFOLDL2_2E4 _let_9) _let_6) _let_4) _let_2)) (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2Elist_2EFOLDL2_2E0)) _let_9))) _let_6))) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((s A_27b) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 A_27c)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 A_27c))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s A_27c))) (= (_let_9 (((c_2Ecombin_2EC_2E3 _let_6) _let_2) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_2))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 (_let_5 (_let_4 _let_1)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2EC_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2EC_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_10 (s A_27a))) (= (_let_10 (((c_2Elist_2EsplitAtPki_2E3 _let_8) _let_6) _let_2)) (_let_10 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Elist_2EsplitAtPki_2E0)) _let_8))) _let_6))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 ((s (_let_1 (_let_1 tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3R_27_2E0 u) (V4l1_27_2E0 u) (V5l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l2_27_2E0))) (let ((_let_3 (_let_1 V4l1_27_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2l2_2E0))) (let ((_let_8 (_let_1 V1l1_2E0))) (=> (and (= _let_8 _let_3) (= _let_7 _let_2) (forall ((V6a_2E0 u) (V7b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7b_2E0))) (let ((_let_3 (_let_1 V6a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s (tyop_2Elist_2Elist A_27a)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 (_let_9 V4l1_27_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 (_let_9 V5l2_27_2E0))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3R_27_2E0)) _let_3))) _let_2)))))))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELLEX_2E3 (_let_5 V0R_2E0)) _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELLEX_2E3 (_let_5 V3R_27_2E0)) _let_3) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1ls_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) ((mono_2Ec_2Eprim__rec_2E_3C V2m) V3n)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_1))))) (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3n))) _let_1)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0)))))))))) (forall ((V0L mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM V0L) ((mono_2Ec_2Elist_2ESUM__ACC V0L) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (s (_let_1 _let_2)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0t_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1h_2E0))) (= (_let_4 (c_2Elist_2ELAST_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_5) _let_3)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) _let_5) (_let_4 (c_2Elist_2ELAST_2E1 _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_4 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_2)))) (let ((_let_6 (_let_4 c_2Elist_2ENIL_2E0))) (and (= (= _let_5 _let_6) _let_3) (= (= _let_6 _let_5) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2EOPTION__MAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2EOPTION__MAP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1l1_2E0 u) (V2x_2E0 u) (V3l2_2E0 u) (V4l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0v_2E0))) (let ((_let_6 (_let_1 V1l1_2E0))) (let ((_let_7 (c_2Elist_2EAPPEND_2E2 _let_6))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_5) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_6))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_7 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 V2x_2E0)) _let_3))))) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_7 (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_3))))) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 _let_2) (_let_1 V0P_2E0))))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2ECOMM_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2ECOMM_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s _let_5) V0l1_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_8 (s _let_7))) (let ((_let_9 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) _let_9) (= _let_9 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= (_let_8 (_let_4 ((s (tyop_2Elist_2Elist _let_7)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_5) _let_1)) ((c_2Epair_2E_2C_2E2 _let_6) _let_2)))))) (_let_8 ((c_2Epair_2E_2C_2E2 ((s A_27a) (_let_4 _let_6))) ((s A_27b) (_let_4 _let_2)))))))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 c_2Elist_2ENIL_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_8 (_let_3 V1x_2E0))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_8) _let_7))) (= _let_8 _let_4)) (= (= _let_2 _let_7) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (c_2Elist_2ESHORTLEX_2E1 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27d))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27d))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0L_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (= _let_3 _let_2))) (and (= _let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_2) _let_3)))) (= _let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 _let_1)) V1g_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) V2f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (c_2Elist_2ELIST__BIND_2E2 ((s (tyop_2Elist_2Elist A_27c)) V0l_2E0)))) (let ((_let_9 (s _let_4))) (= (_let_9 ((c_2Elist_2ELIST__BIND_2E2 ((s _let_1) (_let_8 _let_3))) _let_6)) (_let_9 (_let_8 ((s (_let_2 _let_4)) ((c_2Ecombin_2Eo_2E2 ((s (_let_7 _let_4)) ((c_2Ecombin_2EC_2E2 ((s (_let_7 ((tyop_2Emin_2Efun _let_5) _let_4))) c_2Elist_2ELIST__BIND_2E0)) _let_6))) _let_3))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 V1ls_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2l_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (= (= (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1l1_2E0)) (_let_1 V0l2_2E0)))) (exists ((V4l10_2E0 u) (V5l20_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l20_2E0))) (let ((_let_3 (_let_1 V4l10_2E0))) (let ((_let_4 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0)))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (and (= (_let_5 V1l1_2E0) (_let_5 (_let_4 _let_3))) (= (_let_5 V0l2_2E0) (_let_5 (_let_4 _let_2))) (= (_let_1 V2l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2ESORTED_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Esorting_2ESORTED_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (V0L_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V0L_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Elist_2ELEN_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))) (forall ((A_27a d) (V0h1_2E0 u) (V1h2_2E0 u)) (let ((_let_1 (s A_27a))) (=> (not (= (_let_1 V0h1_2E0) (_let_1 V1h2_2E0))) (forall ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (not (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V0h1_2E0)) (_let_1 V2l1_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1h2_2E0)) (_let_1 V3l2_2E0))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2x_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_3)))) V1d_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s _let_3))) (let ((_let_8 ((s (_let_6 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EDecode_2Ewf__decoder_2E2 _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 _let_8) _let_2)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 ((s (_let_4 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3)))) ((c_2EDecode_2Edecode__list_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_8))) _let_5))) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__list_2E2 ((s (_let_6 _let_3)) (c_2EDecode_2Edec2enc_2E1 _let_5))) _let_2))))))))))))))) (forall ((A_27c d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27f) A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27f))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27e))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27e) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27e) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3v1_2E0 u) (V4v2_2E0 u) (V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_4 ((s A_27b) V4v2_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_5 V1l1_2E0))) (let ((_let_7 ((s A_27a) V3v1_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_9 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) V0P_2E0))) (let ((_let_10 (c_2Elist_2ELIST__REL_2E3 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 _let_9) _let_7))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 _let_6) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 (_let_5 (((c_2Elist_2ELUPDATE_2E3 _let_7) _let_3) _let_6))) (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_4) _let_3) _let_2)))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Elist_2EdropWhile_2E2 _let_3) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ESNOC_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ESNOC_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 _let_3)) ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_3)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2ET)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0a) ((mono_2Ec_2ETemporal__Logic_2ESWHEN F0) V0a))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) _let_1)))))))))))) (forall ((V0ls_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0ls_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) A_27b))) (let ((_let_5 ((s _let_4) V1f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_5) ((s (tyop_2Elist_2Elist _let_3)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) ((c_2Epair_2E_2C_2E2 _let_2) _let_2)))))) (_let_7 ((c_2Elist_2EMAP_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_2))))))))))))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2l_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_27_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_1))) (= (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_3))) _let_4)) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun A_27a) _let_1))) F0_2E0)) _let_4) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (and (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s (_let_3 (_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0ls_2E0 u) (V1R_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V1R_2E0)) _let_1))) _let_1)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0)) _let_1) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Elist_2ELRC_2E4 _let_10) _let_5) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_7) ((app_2E2 (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Elist_2ELRC_2E0)) _let_10))) _let_5))) _let_3))) _let_2))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27d))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s _let_5) V0l1_2E0))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_5) _let_1)) ((c_2Epair_2E_2C_2E2 _let_6) _let_2))))))))) (let ((_let_8 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_6))))) (=> (= _let_8 _let_4) (and (= _let_7 _let_8) (= _let_7 _let_4)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EdropWhile_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u) (V1P_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (= (forall ((V3i mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3i) V2n) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3i))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0P1_2E0 u) (V1P2_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Elist_2EEVERY_2E2 (_let_3 V0P1_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_3 V1P2_2E0)) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l2_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2))) _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (_let_2 (c_2Elist_2Enub_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (c_2Elist_2Enub_2E1 (_let_2 ((c_2Elist_2EFILTER_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_3))) _let_4))))) (_let_2 (c_2Elist_2Enub_2E1 _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27f d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27f))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27f) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27f) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (= (_let_2 (((c_2Elist_2EPAD__RIGHT_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) c_2Elist_2EPAD__RIGHT_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1l2_2E0))))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V2f_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27c)))) (= (_let_7 (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_2)) (_let_7 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_5) A_27c)) (c_2Epair_2EUNCURRY_2E1 _let_6))) ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V7n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V1a0_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (= (forall ((V2_27list_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (forall ((V3a0_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3a0_27_2E0))) (=> (or (= _let_3 (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) c_2Ebool_2EARB_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0)))) (exists ((V5a0_2E0 u) (V6a1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V6a1_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27list_27_2E0)) _let_4))) (= (_let_3 V3a0_27_2E0) (_let_3 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)))) ((s A_27a) V5a0_2E0)) (_let_2 ((c_2Eind__type_2EFCONS_2E2 _let_4) (_let_2 F2_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27list_27_2E0)) _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27list_27_2E0)) ((s _let_1) V1a0_27_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1a0_27_2E0))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1)) V0rep_2E0)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epred__set_2ECHOICE_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (= (exists ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) (_let_1 V3l2_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))))) (forall ((V0L mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Elist_2ESUM__ACC V0L) V1n) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ESUM V0L)) V1n))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (= (= (_let_3 ((c_2Elist_2EMAP_2E2 (_let_2 V0f1_2E0)) _let_1)) (_let_3 ((c_2Elist_2EMAP_2E2 (_let_2 V1f2_2E0)) _let_1))) (forall ((V3e_2E0 u)) (let ((_let_1 ((s A_27a) V3e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0)))))) (= (_let_4 ((app_2E2 (_let_3 V0f1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V1f2_2E0)) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_6))) (= (_let_1 (((c_2Epred__set_2EITSET_2E3 _let_8) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epred__set_2EITSET_2E0)) _let_8))) _let_5))) _let_2))))))))))))) (forall ((A_27a d)) (and (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V0ll_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V2ll_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (_let_4 ((c_2Ellist_2ELDROP_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_2)) (_let_4 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_3)) ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (c_2Ellist_2ELDROP_2E1 (_let_5 (i_mono_2Etyop_2Enum_2Enum V1n))))) (_let_4 (c_2Ellist_2ELTL_2E1 _let_2))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ESHORTLEX_2E3 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V0R_2E0)) _let_4) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V2x_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))))) (exists ((V3y_2E0 u)) (let ((_let_1 ((s A_27a) V3y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))) (= (_let_3 V2x_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V1f_2E0)) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ewot_2EWeakWellOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ewot_2EWeakWellOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V2f_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V0l2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_3 V1l1_2E0))) (= (_let_5 ((c_2Elist_2ELIST__BIND_2E2 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_4))) _let_2)) (_let_5 ((c_2Elist_2EAPPEND_2E2 (_let_5 ((c_2Elist_2ELIST__BIND_2E2 _let_6) _let_2))) (_let_5 ((c_2Elist_2ELIST__BIND_2E2 _let_4) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u) (V2y_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1x_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V2y_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_8) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3i))) _let_2))))))) (or (= _let_5 _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (exists ((V4ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V4ls_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Elist_2ELRC_2E4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V3R_2E0)) _let_1) (_let_2 V1x_2E0)) (_let_2 V0y_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1))) V2n)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V3R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 V1x_2E0)) (_let_1 V0y_2E0)))))))) (forall ((A_27a d) (V0e_2E0 u) (V1R_2E0 u) (V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3b_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_6 (_let_3 V2a_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1R_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_3 (_let_5 _let_6))) (_let_3 (_let_5 _let_4)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27c) A_27d))))) (let ((_let_2 (tyop_2Elist_2Elist A_27d))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (and (= (_let_1 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_2)) ((c_2Epair_2E_2C_2E2 ((s _let_3) c_2Elist_2ENIL_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0))))) (_let_1 c_2Elist_2ENIL_2E0)) (forall ((V0x1_2E0 u) (V1l1_2E0 u) (V2x2_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1l1_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 (s (tyop_2Elist_2Elist _let_8)))) (let ((_let_10 ((s A_27b) V2x2_2E0))) (let ((_let_11 ((s A_27a) V0x1_2E0))) (= (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_11) _let_6))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_10) _let_3)))))) (_let_9 ((c_2Elist_2ECONS_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_11) _let_10))) (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3)))))))))))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (= (and (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (= V1m mono_2Ec_2Enum_2E0)) (= (_let_4 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27x d) (V0A_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V0A_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewot_2Etower_2E1 _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewot_2Esuccl_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewot_2Euncl_2E1 _let_1)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (= V1m (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)) _let_2)))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0P) V2t) (not (V0P V2t)))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT (F0 V0P)) V1x) (not ((mono_2Ec_2ETemporal__Logic_2ENEXT V0P) V1x)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u) (V2h_2E0 u) (V3lr_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 V1l_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_1 V3lr_2E0)))) (exists ((V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l2_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_4 ((s A_27a) V2h_2E0))) (let ((_let_5 (_let_1 V4l1_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_7 (c_2Elist_2EFILTER_2E2 _let_6))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_6) _let_4))) (= (_let_1 (_let_7 _let_2)) (_let_1 V3lr_2E0)) (= (_let_1 (_let_7 _let_5)) _let_3) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f_2E0 u) (V3R_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27c)) V1l1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((s (_let_3 A_27a)) V2f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V3R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Elist_2ELIST__REL_2E3 _let_6) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Elist_2ELIST__REL_2E3 ((s (_let_3 _let_5)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_4))) _let_2) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (F8_2E0 u) (F5_2E0 u) (F23_2E0 u) (F20_2E0 u) (F2_2E0 u) (F17_2E0 u) (F14_2E0 u) (F11_2E0 u) (F9_2E0 u) (F7_2E0 u) (F6_2E0 u) (F4_2E0 u) (F3_2E0 u) (F22_2E0 u) (F21_2E0 u) (F19_2E0 u) (F18_2E0 u) (F16_2E0 u) (F15_2E0 u) (F13_2E0 u) (F12_2E0 u) (F10_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4P_2E0 u) (V1Q_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F8_2E0)) _let_6))) _let_4))) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V4P_2E0 u) (V1Q_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F5_2E0)) _let_6))) _let_4))) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V3P1_2E0 u) (V2P2_2E0 u) (V28x_2E0 u)) (let ((_let_1 ((s A_27b) V28x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (_let_3 V3P1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F23_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V3P1_2E0 u) (V2P2_2E0 u) (V25x_2E0 u)) (let ((_let_1 ((s A_27b) V25x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V3P1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F20_2E0)) _let_6))) _let_4))) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V4P_2E0 u) (V1Q_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V4P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F2_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V3P1_2E0 u) (V2P2_2E0 u) (V22x_2E0 u)) (let ((_let_1 ((s A_27b) V22x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V3P1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F17_2E0)) _let_6))) _let_4))) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V3P1_2E0 u) (V2P2_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27b) V19x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V3P1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F14_2E0)) _let_6))) _let_4))) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V4P_2E0 u) (V1Q_2E0 u) (V16x_2E0 u)) (let ((_let_1 ((s A_27b) V16x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V4P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F11_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V4P_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27b) V14x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F9_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F6_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2P2_2E0 u) (V27x_2E0 u)) (let ((_let_1 ((s A_27b) V27x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F22_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3P1_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27b) V26x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3P1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F21_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2P2_2E0 u) (V24x_2E0 u)) (let ((_let_1 ((s A_27b) V24x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F19_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3P1_2E0 u) (V23x_2E0 u)) (let ((_let_1 ((s A_27b) V23x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3P1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F18_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2P2_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27b) V21x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F16_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3P1_2E0 u) (V20x_2E0 u)) (let ((_let_1 ((s A_27b) V20x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3P1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F15_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2P2_2E0 u) (V18x_2E0 u)) (let ((_let_1 ((s A_27b) V18x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2P2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F13_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3P1_2E0 u) (V17x_2E0 u)) (let ((_let_1 ((s A_27b) V17x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3P1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F12_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V15x_2E0 u)) (let ((_let_1 ((s A_27b) V15x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F10_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1Q_2E0 u) (V2P2_2E0 u) (V3P1_2E0 u) (V4P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1Q_2E0))) (let ((_let_4 (_let_2 V4P_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s (_let_5 _let_6)))) (let ((_let_8 (s _let_6))) (let ((_let_9 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_10 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_9))) (let ((_let_13 (_let_2 V2P2_2E0))) (let ((_let_14 (_let_2 V3P1_2E0))) (let ((_let_15 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_9))) (let ((_let_16 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_9))) (and (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 F6_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 F7_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F8_2E0)) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 F16_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 F15_2E0)) _let_14)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F17_2E0)) _let_14))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 F22_2E0)) _let_13))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 F21_2E0)) _let_14)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F23_2E0)) _let_14))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 F18_2E0)) _let_14))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 F19_2E0)) _let_13)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_16 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F20_2E0)) _let_14))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 F12_2E0)) _let_14))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 F13_2E0)) _let_13)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_15 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F14_2E0)) _let_14))) _let_13)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 F9_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 F10_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F11_2E0)) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 F3_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_12 (_let_2 ((app_2E2 (_let_8 F4_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F5_2E0)) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 F1_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 (_let_2 ((app_2E2 (_let_8 ((app_2E2 (_let_7 F2_2E0)) _let_4))) _let_3))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (F0 V1n))) (forall ((V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1n)))) (_let_4 (c_2Elist_2EHD_2E1 _let_2))) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V1n)))) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))))))))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ebag_2ESET__OF__BAG_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2ELIST__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Epartial__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)) _let_2))) (forall ((V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (_let_1 V2t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Echain_2E2 _let_3) _let_2))) (not (= (_let_1 ((c_2Eset__relation_2Eupper__bounds_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (exists ((V3x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)) (_let_1 ((c_2Eset__relation_2Emaximal__elements_2E2 (_let_1 V1s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)))))))))))) (forall ((V0n2 mono_2Etyop_2Enum_2Enum) (V1n1 mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V1n1))) (let ((_let_2 (mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_2B V2a)))) (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum (_let_2 V1n1)) ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_2B (_let_1 V2a))) V0n2)) (_let_2 (_let_1 V0n2)))))) (forall ((A_27a d) (V0P_2E0 u) (V1exists_27_2E0 u)) (=> (and (forall ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V4h_2E0)) _let_3)))))))))))) (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_3) (_let_2 V3t_2E0))))))))))))) (forall ((V6a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V6a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1exists_27_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (=> (and (forall ((V6f_2E0 u) (V7y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V0P_2E0)) ((s _let_3) V6f_2E0)))) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) V7y_2E0)))))))))) (forall ((V8f_2E0 u) (V9v4_2E0 u) (V10v5_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) V0P_2E0)) ((s _let_4) V8f_2E0)))) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27b) V9v4_2E0)) (_let_3 V10v5_2E0)))))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))))) (forall ((V1f_2E0 u) (V2h1_2E0 u) (V3t1_2E0 u) (V4h2_2E0 u) (V5t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3t1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) V0P_2E0)) ((s _let_7) V1f_2E0)))))) (let ((_let_11 (s _let_8))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_6))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_5 ((c_2Elist_2ECONS_2E2 ((s A_27b) V2h1_2E0)) _let_6))))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27c) V4h2_2E0)) _let_3)))))))))))))))))))) (forall ((V11v_2E0 u) (V12v1_2E0 u) (V13v2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V0P_2E0)) ((s _let_3) V11v_2E0)))) ((s _let_2) V12v1_2E0)))) ((s _let_1) V13v2_2E0)))))))))))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d)) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) _let_2))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((s _let_6) V0l1_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_10 (c_2Elist_2ELENGTH_2E1 _let_7))) (j_mono_2Etyop_2Enum_2Enum (_let_10 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F0_2E0)) _let_4))) ((s (tyop_2Elist_2Elist _let_8)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_6) _let_1)) ((c_2Epair_2E_2C_2E2 _let_7) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2)))))))))))))))))) (forall ((A_27g d) (A_27h d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27h))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27g))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27g) ((tyop_2Emin_2Efun A_27h) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEXISTS_2E2 _let_6) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_4) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEXISTS_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) mono_2Ec_2Enum_2E0) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V1l_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))) (exists ((V3h_2E0 u) (V4l_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) _let_2))))))))) (forall ((V9l_2E0 u) (V10n1 mono_2Etyop_2Enum_2Enum) (V11n2 mono_2Etyop_2Enum_2Enum)) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V9l_2E0)))) ((mono_2Ec_2Earithmetic_2E_2B V10n1) V11n2)) (exists ((V12l1_2E0 u) (V13l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V12l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V13l2_2E0))) (and (= (_let_1 V9l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))) V11n2) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) V10n1))))))))) (forall ((V5l_2E0 u) (V6n mono_2Etyop_2Enum_2Enum)) (= (exists ((V7h_2E0 u) (V8l_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_27_2E0))) (and (= (_let_1 V5l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V7h_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V5l_2E0)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6n))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Elist_2ESET__TO__LIST_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ESET__TO__LIST_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d)) (and (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l3_2E0))) (let ((_let_3 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l1_2E0)))) (let ((_let_4 (_let_1 V1l2_2E0))) (= (= _let_4 _let_2) (= (_let_1 (_let_3 _let_4)) (_let_1 (_let_3 _let_2))))))))) (forall ((V3l1_2E0 u) (V4l2_2E0 u) (V5l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l1_2E0))) (let ((_let_3 (_let_1 V5l3_2E0))) (let ((_let_4 (_let_1 V4l2_2E0))) (= (= _let_4 _let_3) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (c_2Elist_2Enub_2E1 _let_2)))) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 ((s A_27a) V4h_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) F1_2E0)) _let_4))) _let_3)) (_let_6 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V1f_2E0 u) (V3t0_2E0 u) (V4h_2E0 u)) (let ((_let_1 ((s A_27a) V4h_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (tyop_2Elist_2Elist A_27b))) (let ((_let_7 ((s _let_6) V3t0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 ((s _let_8) V1f_2E0))) (let ((_let_10 (s _let_3))) (let ((_let_11 (_let_5 _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_9))) _let_7))) _let_1)) (_let_10 ((c_2Eoption_2EOPTION__BIND_2E2 (_let_10 ((c_2Elist_2EOPT__MMAP_2E2 _let_9) _let_7))) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F1_2E0)) _let_1)))))))))))))))))) (and (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Elist_2EOPT__MMAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a))) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((V1f_2E0 u) (V2h0_2E0 u) (V3t0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3t0_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((s A_27b) V2h0_2E0))) (let ((_let_11 (s _let_7))) (= (_let_11 ((c_2Elist_2EOPT__MMAP_2E2 _let_6) (_let_2 ((c_2Elist_2ECONS_2E2 _let_10) _let_3)))) (_let_11 ((c_2Eoption_2EOPTION__BIND_2E2 ((s _let_4) ((app_2E2 _let_6) _let_10))) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_3))))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) _let_2))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1x_2E0 u) (V2ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_3) _let_4)))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1))))))))))) (forall ((A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 _let_4))) _let_4)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1f_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (= (_let_5 ((c_2Elist_2EMAP_2E2 _let_3) ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_5 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_4)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (c_2Elist_2EMAP_2E1 _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2l1_27_2E0 u) (V3l2_2E0 u) (V4l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l2_27_2E0))) (let ((_let_3 (_let_1 V2l1_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V3l2_2E0))) (let ((_let_6 (c_2Esorting_2EPERM_2E2 (_let_1 V1l1_2E0)))) (let ((_let_7 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 (_let_1 (_let_7 _let_3))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_5) (_let_1 (_let_7 _let_2))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0rs_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (=> (and (forall ((V1r_2E0 u) (V2r_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2r_27_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V1r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0rs_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_7))) (not (= _let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_5))) (_let_4 (c_2Eset__relation_2Erange_2E1 _let_5))))) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_4 (c_2Eset__relation_2Erange_2E1 _let_3)))))))))))))))) (forall ((V3r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V3r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0rs_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Eacyclic_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0rs_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 A_27c)) (_let_4 A_27a)))) (let ((_let_6 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun _let_1) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Elist_2Elist _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2ELIST__APPLY_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2ELIST__APPLY_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun _let_2) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Elist_2Elist _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2ELIST__APPLY_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2ELIST__APPLY_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0e_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0e_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0e_2E0 u) (V1b_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_5 (app_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (_let_1 V0e_2E0))) (let ((_let_8 (_let_3 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (((c_2Ebag_2EBAG__INSERT_2E3 _let_7) _let_4) _let_2))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_2))) _let_7)))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_7)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELLEX_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0)) (_let_1 V0l_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (= (exists ((V2e_2E0 u)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EMMAP_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Estate__transformer_2EMMAP_2E0)) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erange_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_4 (_let_3 V0ll_2E0))) (let ((_let_5 (_let_1 (c_2Ellist_2ELHD_2E1 _let_4)))) (let ((_let_6 (= _let_4 (_let_3 c_2Ellist_2ELNIL_2E0)))) (and (= _let_6 (= _let_2 _let_5)) (= _let_6 (= _let_5 _let_2)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n1 mono_2Etyop_2Enum_2Enum) (V2n2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s A_27a))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 _let_1))) ((mono_2Ec_2Eprim__rec_2E_3C V1n1) _let_4) ((mono_2Ec_2Eprim__rec_2E_3C V2n2) _let_4)) (= (= V1n1 V2n2) (= (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n1))) _let_1)) (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2n2))) _let_1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0l_2E0 u) (V1P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)))) (= (_let_1 (_let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (_let_3 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V4tx_2E0 u) (V5hx_2E0 u)) (let ((_let_1 ((s A_27b) V4tx_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_9 (_let_2 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10)) F3_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))))) _let_4))) _let_1))) ((s A_27a) V5hx_2E0))) (_let_7 ((c_2Ellist_2ELNTH_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun A_27a) _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 ((s _let_1) V3v_2E0))) (let ((_let_12 (s _let_6))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_14 (_let_8 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_5))) _let_4))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F3_2E0)) _let_5))) _let_4)))))))))))))))))))) (=> (forall ((V6n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V8tx_2E0 u) (V9hx_2E0 u)) (let ((_let_1 ((s A_27b) V8tx_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_9 (_let_2 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10)) F2_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V6n))))) _let_4))) _let_1))) ((s A_27a) V9hx_2E0))) (_let_7 ((c_2Ellist_2ELNTH_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n))))) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V6n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V7v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun A_27a) _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 ((s _let_1) V7v_2E0))) (let ((_let_12 (s _let_6))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_14 (_let_8 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F1_2E0)) _let_5))) _let_4))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F2_2E0)) _let_5))) _let_4)))))))))))))))))))) (forall ((V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V1f_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (and (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_6))) (let ((_let_10 ((s A_27b) V0x_2E0))) (= (_let_9 ((c_2Ellist_2ELNTH_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6n))))) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_10)))) (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_2) ((app_2E2 _let_4) _let_10))) (_let_9 c_2Eoption_2ENONE_2E0)) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) F1_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V6n))))) _let_4)))))))))))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_6))) (let ((_let_10 ((s A_27b) V0x_2E0))) (= (_let_9 ((c_2Ellist_2ELNTH_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))))) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_10)))) (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_2) ((app_2E2 _let_4) _let_10))) (_let_9 c_2Eoption_2ENONE_2E0)) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)) F0_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))))) _let_4)))))))))))))))) (= (_let_5 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27a)) c_2Epair_2ESND_2E0)) ((s _let_3) ((app_2E2 _let_4) _let_1))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d)) (and (forall ((V1x_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1x_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V2h_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_8) _let_2))))))) (or (= _let_5 _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))))) (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))))) mono_2Ec_2Ebool_2EF)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EMAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EMAP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0xs_2E0 u) (V1t_2E0 u) (V2h_2E0 u) (V3R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V3R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V0xs_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27b) V2h_2E0)) (_let_1 V1t_2E0)))))) (exists ((V4h_27_2E0 u) (V5t_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5t_27_2E0))) (let ((_let_3 ((s A_27a) V4h_27_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V3R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 _let_5) _let_2) ((s (tyop_2Elist_2Elist A_27b)) V1t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) ((s A_27b) V2h_2E0)))) (= (_let_1 V0xs_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (F0 V1n))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 (_let_4 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1n)))) (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) _let_2))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Emin_2E_3D_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Emin_2E_3D_2E0)) _let_1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a_2E0))) (let ((_let_5 (_let_1 V1y_2E0))) (let ((_let_6 (_let_3 V0x_2E0))) (= (and (= _let_5 _let_2) (= _let_6 _let_4)) (= (_let_1 ((c_2Elist_2ESNOC_2E2 _let_6) _let_5)) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_4) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1e_2E0 u) (V0w_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2x_2E0))) (let ((_let_6 (_let_4 V1e_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_3 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_3 _let_11)) F0_2E0)) _let_6))) _let_2))) _let_5)) (_let_9 ((c_2Epair_2E_2C_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_5) _let_6))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_2))))))))))))))))))) (forall ((V0w_2E0 u) (V1e_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V1e_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_5 ((s _let_4) V0w_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_6 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ewellorder_2Ewellorder_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_5))) (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F0_2E0)) _let_3))) _let_5))))))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_3) _let_3))) (_let_2 c_2Epred__set_2EEMPTY_2E0))))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1)))) (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_3) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun _let_1) A_27b)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDL_2E0)) _let_8))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))) (let ((_let_6 (c_2Elist_2EAPPEND_2E2 _let_3))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_5) V2n) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) _let_5)))) _let_2))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))))))) (exists ((V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (and ((mono_2Ec_2Eprim__rec_2E_3C V3m) V1n) (= (_let_1 V0x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3m)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a0_27_2E0 u) (V3a1_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3a1_27_2E0))) (let ((_let_3 (_let_1 V1a1_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2a0_27_2E0))) (let ((_let_6 (_let_4 V0a0_2E0))) (= (= (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_3)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_2))) (and (= _let_6 _let_5) (= _let_3 _let_2)))))))))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0c_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (= (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (= (forall ((V1n1 mono_2Etyop_2Enum_2Enum) (V2n2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s A_27a))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2n2) _let_4) ((mono_2Ec_2Eprim__rec_2E_3C V1n1) _let_4)) (= (= V1n1 V2n2) (= (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n1))) _let_1)) (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2n2))) _let_1)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2Elist_2EEL_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EEL_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f_2E0))) (let ((_let_4 (s _let_2))) (= (_let_4 ((c_2Elist_2ELIST__BIND_2E2 _let_1) _let_3)) (_let_4 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_2)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (= (= _let_2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) (= _let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Einftree_2Efrom__inftree_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Einftree_2Efrom__inftree_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0eltsize_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Ebag_2Ebag__size_2E2 (_let_1 V0eltsize_2E0)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) _let_2)))) _let_2)))) (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2y_2E0)) (_let_1 V3z_2E0))))) (let ((_let_4 (c_2Elist_2ECONS_2E2 (_let_2 V1x_2E0)))) (= (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 (_let_4 _let_3)))) (_let_1 (_let_4 (_let_1 (c_2Elist_2EFRONT_2E1 _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1b_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (((c_2Ebag_2EBAG__FILTER_2E3 _let_5) _let_3) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1)))) mono_2Ec_2Enum_2E0)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Erich__list_2EBUTLASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_5 (_let_3 (_let_5 (_let_4 _let_2)))) (_let_5 (_let_4 (_let_1 (_let_3 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0e_2E0 u) (V1f_2E0 u)) (exists ((V2fn_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) V2fn_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0))) (_let_1 V0e_2E0)) (forall ((V3x_2E0 u) (V4l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V2fn_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s A_27a) V3x_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_9 (_let_4 _let_8))) (= (_let_6 (_let_5 (_let_2 ((c_2Elist_2ESNOC_2E2 _let_7) _let_3)))) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_9)) V1f_2E0)) _let_7))) _let_3))) (_let_6 (_let_5 _let_3)))))))))))))))))))) (= (_let_286 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum)) (_let_286 c_2Elist_2EAPPEND_2E0)) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) _let_3)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (c_2Elist_2ELAST_2E1 (_let_3 ((c_2Elist_2ECONS_2E2 _let_2) (_let_3 c_2Elist_2ENIL_2E0))))) _let_2))))) (forall ((V1h1_2E0 u) (V2h2_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2h2_2E0)) (_let_1 V3t_2E0))))) (= (_let_2 (c_2Elist_2ELAST_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V1h1_2E0)) _let_3)))) (_let_2 (c_2Elist_2ELAST_2E1 _let_3))))))))) (forall ((A_27a d) (V0i mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0i)))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_3 ((c_2Ellist_2ELNTH_2E2 _let_1) _let_2)) (_let_3 ((c_2Ellist_2Ellist__rep_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 ((s A_27b) V1h_2E0))) (and (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_5) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))) (= (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r_2E0))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V6z_2E0))) (let ((_let_6 (_let_4 V4x_2E0))) (let ((_let_7 (s _let_1))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 ((s (_let_9 _let_10)) V1tc_27_2E0)))) (let ((_let_12 (s _let_10))) (let ((_let_13 (_let_4 V5y_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) _let_13))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_12 (_let_11 _let_5))) _let_13))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_12 (_let_11 _let_6))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) _let_3)))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V1x_2E0))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) _let_3)) (_let_2 ((c_2Elist_2ECONS_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0)))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (_let_2 ((c_2Elist_2ELIST__BIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0))) _let_3))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2Eoption__CASE_2E0)) _let_6))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Elist_2EMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2EMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (V0t2_2E0 u) (V1t1_2E0 u) (V2h2_2E0 u) (V3h1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V4R_2E0))) (let ((_let_6 (c_2Elist_2ELLEX_2E3 _let_5))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V0t2_2E0))) (let ((_let_10 (s A_27a))) (let ((_let_11 (_let_10 V2h2_2E0))) (let ((_let_12 (_let_1 ((c_2Elist_2ECONS_2E2 _let_11) _let_9)))) (let ((_let_13 (_let_1 V1t1_2E0))) (let ((_let_14 (_let_10 V3h1_2E0))) (let ((_let_15 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 _let_14) _let_13))))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_15 _let_2)))) (= (or (and (= _let_14 _let_11) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_6 _let_13) _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_14))) _let_11)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_15 _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_12))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) (tyop_2Elist_2Elist A_27d)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27c) A_27d)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d)) (and (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 _let_3))) (let ((_let_5 (_let_1 (_let_4 _let_2)))) (let ((_let_6 ((s A_27a) V2h_2E0))) (let ((_let_7 (c_2Elist_2ECONS_2E2 _let_6))) (= (_let_1 (_let_4 (_let_1 (_let_7 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_6))) (_let_1 (_let_7 _let_5))) _let_5))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 (_let_2 V0f_2E0))) (let ((_let_4 (c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)))) (= (_let_2 (_let_4 (_let_2 (_let_4 _let_3)))) _let_3)))))) (= (_let_285 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) (_let_285 c_2Elist_2ENIL_2E0)) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRP_2E3 _let_3) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_3))) _let_2)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (= (_let_1 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_2)) ((c_2Epair_2E_2C_2E2 ((s _let_3) V1l1_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0))))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V2x1_2E0 u) (V3l1_2E0 u) (V4x2_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5l2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3l1_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 (s (tyop_2Elist_2Elist _let_8)))) (let ((_let_10 ((s A_27b) V4x2_2E0))) (let ((_let_11 ((s A_27a) V2x1_2E0))) (= (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 _let_11) _let_6))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_10) _let_3)))))) (_let_9 ((c_2Elist_2ECONS_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_11) _let_10))) (_let_9 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3))))))))))))))))))) (forall ((V0l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (= (_let_1 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_2)) ((c_2Epair_2E_2C_2E2 ((s _let_3) c_2Elist_2ENIL_2E0)) ((s _let_2) V0l2_2E0))))) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d)) (and (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 ((s A_27a) V0h_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l3_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Elist_2ELIST__REL_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1l1_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2l2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_4 _let_7) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V4n))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 (_let_3 (_let_1 V3l3_2E0))))) (let ((_let_6 (_let_1 V1l1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s (_let_7 _let_8)) V0R_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (app_2E2 (_let_10 (_let_9 (_let_4 (_let_3 _let_6))))))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_4 (_let_3 (_let_1 V2l2_2E0))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_10 (_let_9 _let_13))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 _let_13))) ((mono_2Ec_2Eprim__rec_2E_3C V4n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 _let_5))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0y_2E0 u) (V3L1_2E0 u) (V4L2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4L2_2E0))) (let ((_let_4 ((s A_27b) V0y_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V3L1_2E0))) (let ((_let_8 ((s A_27a) V1x_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_5) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) _let_12))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_13)) F0_2E0)) _let_8))) _let_4))) _let_7))) _let_3)) (_let_10 ((c_2Epair_2E_2C_2E2 (_let_6 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))))))))) (forall ((V0y_2E0 u) (V1x_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_5)))) (let ((_let_7 (_let_6 V2t_2E0))) (let ((_let_8 ((s A_27b) V0y_2E0))) (let ((_let_9 ((s A_27a) V1x_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) _let_3)))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_10))) (and (= (_let_4 (c_2Elist_2EUNZIP_2E1 (_let_6 ((c_2Elist_2ECONS_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_9) _let_8))) _let_7)))) (_let_4 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_11)) F0_2E0)) _let_9))) _let_8))))) (_let_4 (c_2Elist_2EUNZIP_2E1 _let_7))))) (= (_let_4 (c_2Elist_2EUNZIP_2E1 (_let_6 c_2Elist_2ENIL_2E0))) (_let_4 ((c_2Epair_2E_2C_2E2 ((s _let_2) c_2Elist_2ENIL_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V1f_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (c_2Elist_2EMAP_2E2 _let_3))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 ((s A_27a) V2h_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_2)))) (_let_5 ((c_2Elist_2ECONS_2E2 ((s A_27b) ((app_2E2 _let_3) _let_6))) (_let_5 (_let_4 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Emin_2E_3D_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eind__type_2EFCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Eind__type_2EFCONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 _let_1)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2f_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (c_2Elist_2ELIST__BIND_2E2 ((s (tyop_2Elist_2Elist A_27c)) V0l_2E0)))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) ((s _let_1) (_let_6 _let_3)))) (_let_7 (_let_6 ((s (_let_2 _let_5)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) (c_2Elist_2EMAP_2E1 _let_4))) _let_3))))))))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 ((s (_let_1 tyop_2Enum_2Enum)) V1f_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_3) _let_2))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 _let_3) ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_2)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (= (_let_284 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (_let_284 c_2Ebool_2ECOND_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Ebag_2EBAG__INN_2E3 _let_5) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) c_2Ebag_2EBAG__INN_2E0)) _let_5))) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Elist_2ELLEX_2E3 _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Elist_2ELLEX_2E0)) _let_7))) _let_4))) _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27d))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 (((c_2Elist_2EGENLIST__AUX_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EGENLIST__AUX_2E0)) _let_7))) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2ELIST__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6p mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (= (= V6p V4n) ((F0 V6p) V4n))) (and (forall ((V0e_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V0e_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((V3e_2E0 u) (V4n mono_2Etyop_2Enum_2Enum) (V5l_2E0 u) (V6p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V6p))))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V3e_2E0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V6p) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 (_let_4 (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_6) (_let_3 (i_mono_2Etyop_2Enum_2Enum V4n))) _let_2)))) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F0 V6p) V4n)))) _let_6) (_let_5 (_let_4 _let_2)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 tyop_2Enum_2Enum)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_9 (_let_5 _let_8))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s (_let_2 (_let_2 (tyop_2Elist_2Elist _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EdropWhile_2E2 (_let_3 V0P_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))) (= (_let_4 (_let_3 (_let_1 (_let_5 _let_2)))) (_let_4 (_let_5 (_let_4 (_let_3 _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V2f_2E0 u) (V4a_2E0 u)) (let ((_let_1 ((s A_27c) V4a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_3 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_1)) (_let_7 (c_2Epair_2EUNCURRY_2E1 ((s _let_2) ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1l2_2E0))))) (forall ((V2f_2E0 u) (V3a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (s A_27c))) (let ((_let_7 (_let_6 V3a_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27c))) (let ((_let_9 (_let_8 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_10 ((s _let_9) V2f_2E0))) (let ((_let_11 (_let_8 ((tyop_2Emin_2Efun _let_5) A_27c)))) (= (_let_6 ((((c_2Elist_2EFOLDL2_2E4 _let_10) _let_7) _let_4) _let_2)) (_let_6 (((c_2Elist_2EFOLDL_2E3 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_11)) F0_2E0)) _let_10))) _let_7) ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27c)))) (= (_let_5 ((c_2Elist_2EMAP_2E2 _let_4) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1)))) (_let_5 ((c_2Elist_2EMAP_2E2 ((s (_let_2 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((A_27a d) (V0xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V0xs_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Elist_2EALL__DISTINCT_2E1 (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)))))))))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (c_2Elist_2ESET__TO__LIST_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_2)))) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1)))) (let ((_let_4 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist _let_2)) _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_6 ((s _let_5) X2_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (_let_7 X1_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_3))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 _let_10) _let_8) _let_6)) (_let_7 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_12)) c_2Eoption_2Eoption__CASE_2E0)) _let_10))) _let_8))) _let_6)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ewellorder_2Eorderiso_2E2 _let_3) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewellorder_2Efinite_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ewellorder_2Efinite_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0xs_2E0 u) (V1t_2E0 u) (V2h_2E0 u) (V3R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V3R_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_1 V1t_2E0)))) ((s (tyop_2Elist_2Elist A_27b)) V0xs_2E0)))) (exists ((V4h_27_2E0 u) (V5t_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V5t_27_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V3R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27b) V4h_27_2E0))) (and (= (_let_1 V0xs_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) ((s A_27a) V2h_2E0)))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2ELIST__REL_2E3 _let_4) ((s (tyop_2Elist_2Elist A_27a)) V1t_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (= (_let_283 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Eone_2Eone)) (_let_283 c_2Elist_2ECONS_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (c_2Elist_2EMAP_2E2 _let_5))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_8 (s (_let_4 tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 _let_5) (_let_8 ((c_2Epred__set_2EUNION_2E2 (_let_8 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))) (_let_8 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (= (= (_let_7 (_let_6 _let_3)) (_let_7 (_let_6 _let_2))) (= _let_3 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (c_2Elist_2EEXISTS_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1ls_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V1ls_2E0))) (let ((_let_5 (s A_27b))) (and (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) (_let_3 ((c_2Elist_2ECONS_2E2 (_let_5 V2l_2E0)) _let_4)))) (_let_5 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_4))) (= (_let_1 (c_2Elist_2EEL_2E1 (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_1 c_2Elist_2EHD_2E0))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Enum_2Enum V1p) (mono_2Ec_2EEncode_2Eencode__bnum V0m)) ((mono_2Ec_2EEncode_2Ecollision__free V0m) V1p))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))) (let ((_let_6 (s A_27a))) (let ((_let_7 (c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))))) (= (_let_6 (_let_7 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V2n) _let_5)))) (_let_6 (_let_7 _let_3))) (_let_6 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2n) _let_5)))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (V0h_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27e) _let_2)) V0h_2E0))) (let ((_let_4 (_let_1 A_27e))) (let ((_let_5 (tyop_2Emin_2Efun A_27d))) (let ((_let_6 ((s (_let_5 _let_4)) V1g_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (c_2EreaderMonad_2EMCOMPOSE_2E2 ((s (_let_7 (_let_1 A_27d))) V2f_2E0)))) (let ((_let_9 (s (_let_7 _let_2)))) (= (_let_9 (_let_8 ((s (_let_5 _let_2)) ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_6) _let_3)))) (_let_9 ((c_2EreaderMonad_2EMCOMPOSE_2E2 ((s (_let_7 _let_4)) (_let_8 _let_6))) _let_3))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2b mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_2 _let_3))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_5))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2b))))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3t)))) (_let_6 ((app_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V3t) V2b)))))))))))))) (forall ((V0f_2E0 u) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2b)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0f_2E0))) (let ((_let_7 (_let_3 _let_4))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_9 (c_2Elist_2EGENLIST_2E2 _let_6))) (= (_let_8 (_let_9 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1a) V2b))))) (_let_8 ((c_2Elist_2EAPPEND_2E2 (_let_8 (_let_9 _let_2))) (_let_8 ((c_2Elist_2EGENLIST_2E2 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_6))) _let_2))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1a))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V1x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V2y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Elist_2ELIST__REL_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (_let_4 (_let_1 V4x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_4 _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erelation_2EWFP_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) c_2Erelation_2EWFP_2E0)) _let_6))) _let_2)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (= (= _let_3 _let_2) (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1) V2))) (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V2)))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V2f_2E0 u) (V3e_2E0 u) (V4x_2E0 u) (V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V2f_2E0))) (let ((_let_6 ((c_2Elist_2EFOLDR_2E3 _let_5) (_let_3 V3e_2E0)))) (let ((_let_7 ((s A_27a) V4x_2E0))) (= (_let_3 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2)))) (_let_3 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_7))) (_let_3 (_let_6 _let_2))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1e_2E0))) (= (_let_1 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) _let_2)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V3k_2E0 u) (V4h_2E0 u) (V6p_2E0 u) (V7s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7s_2E0))) (let ((_let_4 (_let_2 V6p_2E0))) (let ((_let_5 ((s A_27b) V4h_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V3k_2E0))) (let ((_let_11 (s _let_7))) (let ((_let_12 (s A_27a))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) _let_8))) (= (_let_12 ((app_2E2 (_let_11 ((app_2E2 (_let_9 ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) F0_2E0)) _let_10))) _let_5))) _let_4))) _let_3)) (_let_12 ((app_2E2 (_let_11 ((app_2E2 _let_10) (_let_2 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))))) _let_3))))))))))))))))) (and (forall ((V0P_2E0 u) (V1k_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s (_let_3 _let_4)) V1k_2E0))) (let ((_let_6 (s A_27a))) (= (_let_6 (((c_2Elist_2EsplitAtPki_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)) _let_5) _let_2)) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) _let_2)))))))))) (forall ((V2P_2E0 u) (V3k_2E0 u) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 ((s A_27b) V4h_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V3k_2E0))) (let ((_let_10 (tyop_2Emin_2Efun A_27b))) (let ((_let_11 (_let_10 _let_7))) (let ((_let_12 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_13 (_let_10 tyop_2Emin_2Ebool))) (let ((_let_14 (s (_let_12 _let_13)))) (let ((_let_15 (_let_14 V2P_2E0))) (let ((_let_16 (s A_27a))) (let ((_let_17 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))) (= (_let_16 (((c_2Elist_2EsplitAtPki_2E3 _let_15) _let_9) _let_17)) (_let_16 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_13) ((app_2E2 _let_15) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) _let_4))) (_let_16 ((app_2E2 ((s _let_6) ((app_2E2 _let_9) (_let_2 c_2Elist_2ENIL_2E0)))) _let_17))) (_let_16 (((c_2Elist_2EsplitAtPki_2E3 (_let_14 ((c_2Ecombin_2Eo_2E2 _let_15) ((s (_let_12 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_9))) _let_4))) _let_3)))))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 V1l2_2E0)) (_let_1 V0l1_2E0)))) (exists ((V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1l2_2E0)) (_let_1 V2l_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f1_2E0 u) (V1f2_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27c) V5y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f2_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((s A_27a) V4x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((s _let_8) V0f1_2E0))) (let ((_let_10 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_7 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_9))) _let_4))) _let_6))) _let_1))) (= (_let_5 ((app_2E2 _let_9) _let_6)) (_let_5 ((app_2E2 _let_4) _let_1))))))))))))))))) (forall ((V0f1_2E0 u) (V1f2_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V3l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V2l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V1f2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((s _let_8) V0f1_2E0))) (let ((_let_10 (_let_7 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s (tyop_2Elist_2Elist A_27b)))) (= (= (_let_12 ((c_2Elist_2EMAP_2E2 _let_9) _let_3)) (_let_12 ((c_2Elist_2EMAP_2E2 _let_6) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_6))) _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EreaderMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EreaderMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1f_2E0 u) (V2a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V2a_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((s (_let_1 (_let_5 A_27b))) V1f_2E0))) (= (_let_3 (((c_2Epred__set_2EITSET_2E3 _let_6) _let_2) _let_4)) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s (_let_5 (_let_1 A_27b))) (c_2Ecombin_2EC_2E1 _let_6))) _let_4) ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0xs_2E0 u) (V1gs_2E0 u) (V2fs_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0xs_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s (tyop_2Elist_2Elist _let_3)) V1gs_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_6 ((s (tyop_2Elist_2Elist _let_5)) V2fs_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_8 (_let_2 A_27a))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s (tyop_2Elist_2Elist _let_10)))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 ((s (tyop_2Elist_2Elist _let_8)) ((c_2Elist_2ELIST__APPLY_2E2 ((s (tyop_2Elist_2Elist _let_9)) ((c_2Elist_2ELIST__APPLY_2E2 (_let_11 ((c_2Elist_2ECONS_2E2 ((s _let_10) c_2Ecombin_2Eo_2E0)) (_let_11 c_2Elist_2ENIL_2E0)))) _let_6))) _let_4))) _let_1)) (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_6) ((s (tyop_2Elist_2Elist A_27c)) ((c_2Elist_2ELIST__APPLY_2E2 _let_4) _let_1))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1a0_2E0 u) (V2a1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2a1_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1a0_2E0))) (= (or (exists ((V3h1_2E0 u) (V4h2_2E0 u) (V5t1_2E0 u) (V6t2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5t1_2E0))) (let ((_let_3 ((s A_27a) V3h1_2E0))) (let ((_let_4 ((s A_27b) V4h2_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_9 (_let_8 V6t2_2E0))) (and (= (_let_8 V2a1_2E0) (_let_8 ((c_2Elist_2ECONS_2E2 _let_4) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_2) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_4))) (= (_let_1 V1a0_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))))))))))))) (and (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) _let_4) _let_2))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s A_27b) V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V1R1_2E0)) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) V0R2_2E0)) _let_2))) _let_1)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V4x_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27b)) V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2ELIST__REL_2E3 ((s (_let_3 (_let_4 tyop_2Emin_2Ebool))) V1R1_2E0)) _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2ELIST__REL_2E3 ((s (_let_4 (_let_3 tyop_2Emin_2Ebool))) V0R2_2E0)) _let_2) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Elist_2ESHORTLEX_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Elist_2ESHORTLEX_2E0)) _let_3)))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2l3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l3_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l1_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (V0s1_2E0 u) (V1k_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1k_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 _let_3) _let_1))) (forall ((V2e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2e_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1k_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardleq_2E2 ((s _let_2) (c_2Epred__set_2EBIGUNION_2E1 _let_3))) _let_1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2EFST_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2EFST_2E0)) _let_3)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 (c_2Elist_2EREVERSE_2E1 _let_4))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEXISTS_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEXISTS_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27b) V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_3)))) (= (_let_1 ((c_2Elist_2ELIST__APPLY_2E2 (_let_6 ((c_2Elist_2ECONS_2E2 _let_4) (_let_6 c_2Elist_2ENIL_2E0)))) (_let_5 ((c_2Elist_2ECONS_2E2 _let_2) (_let_5 c_2Elist_2ENIL_2E0))))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 _let_4) _let_2))) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (=> (forall ((V0L1_2E0 u) (V1L2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (= (exists ((V2h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1L2_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_1 V0L1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) (_let_2 V0L1_2E0)))) (_let_2 V1L2_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) F0_2E0))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1f_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (c_2Ellist_2ELMAP_2E2 _let_3))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_6 ((s A_27a) V2h_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_6) _let_2)))) (_let_5 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) ((app_2E2 _let_3) _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (= (_let_1 ((c_2Ellist_2ELMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_1 c_2Ellist_2ELNIL_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEXISTS_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_4))) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) ((s A_27a) (c_2Elist_2EHD_2E1 (_let_1 ((c_2Elist_2EdropWhile_2E2 _let_4) _let_2))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_2))) (=> (forall ((V3a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3a_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F2_2E0)) _let_3))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (=> (forall ((V2SET__TO__LIST_2E0 u) (V3a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3a_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V2SET__TO__LIST_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (_let_2 ((app_2E2 (_let_8 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_7)) F1_2E0)) _let_9))) _let_5)) (_let_2 (c_2Ecombin_2EI_2E1 (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_10 (c_2Epred__set_2EFINITE_2E1 _let_5))) (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_10 ((app_2E2 ((s (_let_6 tyop_2Emin_2Ebool)) F2_2E0)) _let_5))) (_let_2 c_2Elist_2ENIL_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_5))) (_let_2 ((app_2E2 _let_9) (_let_4 (c_2Epred__set_2EREST_2E1 _let_5))))))))) (_let_2 c_2Ebool_2EARB_2E0))))))))))))))))) (=> (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (not (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_2 (c_2Epred__set_2EREST_2E1 _let_3))))) _let_3)))))))))))))))))) (= (_let_4 c_2Elist_2ESET__TO__LIST_2E0) (_let_4 ((c_2Erelation_2EWFREC_2E2 ((s _let_3) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) F0_2E0)))) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)))))))))))) (forall ((A_27a d) (V0c_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2s_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s A_27a) V0c_2E0))) (= (_let_1 (((c_2Elist_2EPAD__LEFT_2E3 _let_4) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) (c_2Ecombin_2EK_2E1 _let_4))) (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))) _let_2)))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_5 (s (_let_1 _let_2)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Ereflexive_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Ereflexive_2E1 (_let_5 ((c_2Eset__relation_2ERREFL__EXP_2E2 (_let_5 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_4))) _let_3))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Ellist_2ELFLATTEN_2E0)) _let_3)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1l mono_2Etyop_2Enum_2Enum) (V2s_2E0 u)) (=> (and (exists ((V4a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) V4a_2E0)) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2s_2E0)))))) (forall ((V3d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V3d_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2s_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V1l)))))) (exists ((V5b_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) V5b_2E0)) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2s_2E0)))) (forall ((V6c_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6c_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ESHORTLEX_2E3 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) (_let_2 V5b_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2s_2E0)))))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) ((c_2Erich__list_2EELL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V1p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) (_let_3 V0s_2E0)))) ((s _let_1) V1p_2E0)))) (forall ((V2m_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2m_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 (_let_2 V1p_2E0)) _let_3)))))))))))))) (=> (forall ((V0s_2E0 u) (V1p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1p_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_3 _let_8))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F0_2E0)) _let_6))) _let_2)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_5 ((app_2E2 ((s (_let_7 _let_4)) F1_2E0)) _let_6))) _let_2)))))))))))))))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0s_2E0))) (let ((_let_6 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (= (_let_4 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_5)) (_let_4 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_5))))))))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1)))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27h d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27h))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27h) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27h) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Elist_2ELLEX_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Elist_2ELLEX_2E0)) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a)) A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2Efcp_2Efcp__CASE_2E2 _let_4) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2Efcp__CASE_2E0)) _let_4))) _let_2)))))))))) (forall ((A_27a d)) (and (forall ((V2e_2E0 u) (V3x_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2e_2E0))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3x_2E0)) _let_2)))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))))))) (forall ((V5e_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7x_2E0 u) (V8l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ELUPDATE_2E3 (_let_4 V5e_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V7x_2E0)))) (= (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V6n)))) (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V6n))) _let_2)))))))))))) (forall ((V0e_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V0e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2R2_2E0 u) (V3R1_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V3R1_2E0)) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V2R2_2E0)) _let_2))) _let_1))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V3R1_2E0)) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V2R2_2E0)) _let_2) _let_1)))))))))) (= (_let_279 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum)) (_let_279 c_2Ecombin_2EK_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0pat_2E0 u) (V1guard_2E0 u) (V3i_2E0 u) (V4v_2E0 u)) (let ((_let_1 ((s A_27b) V4v_2E0))) (let ((_let_2 ((s A_27c) V3i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1guard_2E0))) (let ((_let_7 (_let_3 A_27c))) (let ((_let_8 ((s _let_7) V0pat_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0pat_2E0 u) (V1guard_2E0 u) (V2rhs_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27c) V3i_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1guard_2E0))) (let ((_let_6 (_let_2 A_27c))) (let ((_let_7 ((s _let_6) V0pat_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((s (_let_2 A_27a)) V2rhs_2E0))) (let ((_let_11 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_7) _let_5) _let_10) _let_1)) (_let_11 ((c_2Eoption_2EOPTION__MAP_2E2 _let_10) ((s (tyop_2Eoption_2Eoption A_27b)) (c_2Eoption_2Esome_2E1 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_5))) _let_1))))))))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) (tyop_2Elist_2Elist A_27c)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EMAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EMAP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2EHD_2E1 _let_2))) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) _let_2))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2ENULL_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) _let_2)))) (and (not (= _let_3 _let_2)) (not (= _let_2 _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (= (_let_278 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_278 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4i)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2P_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) (_let_6 ((app_2E2 _let_5) _let_1)))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2P_2E0 u) (V3k_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s (_let_5 _let_6)) V3k_2E0))) (let ((_let_8 (s A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_9))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_11 V2P_2E0))) (let ((_let_13 (s tyop_2Enum_2Enum))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((c_2Elist_2EEVERYi_2E2 (_let_11 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_10)) F0_2E0)) _let_12))) _let_4))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Enum_2Enum (_let_13 (c_2Elist_2ELENGTH_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 ((s _let_9) ((app_2E2 _let_12) (_let_13 (c_2Elist_2ELENGTH_2E1 _let_4))))) ((s A_27a) (c_2Elist_2EHD_2E1 _let_3))))))) (= (_let_8 (((c_2Elist_2EsplitAtPki_2E3 _let_12) _let_7) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)))) (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_4))) _let_3))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eirreflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0L1_2E0 u) (V1L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L2_2E0))) (let ((_let_3 (_let_1 V0L1_2E0))) (= (_let_1 ((c_2Elist_2EREV_2E2 _let_3) _let_2)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V0l1_2E0))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)))) (_let_3 ((c_2Epred__set_2EUNION_2E2 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_4))) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))) (forall ((A_27a d) (V0z_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V3w_2E0))))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0z_2E0))) (let ((_let_5 (c_2Epair_2E_2C_2E2 (_let_3 V2x_2E0)))) (let ((_let_6 (s _let_1))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V1y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 (_let_5 _let_8))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_8) _let_4))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 (_let_5 _let_4))) _let_2))))))))))))) (forall ((A_27a d)) (and (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) (_let_1 V1t_2E0)))))) mono_2Ec_2Ebool_2EF))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27d))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0h_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (c_2Elist_2EHD_2E1 (_let_3 ((c_2Elist_2ECONS_2E2 _let_2) (_let_3 V1t_2E0))))) _let_2))))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) V0n)))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0))) (let ((_let_4 (c_2Elist_2EMAP_2E2 _let_3))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_7 ((s A_27a) V0x_2E0))) (= (_let_5 (_let_4 (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_7) _let_6) _let_2)))) (_let_5 (((c_2Elist_2ELUPDATE_2E3 ((s A_27b) ((app_2E2 _let_3) _let_7))) _let_6) (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2f_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (and (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 _let_6))) ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Enum_2Enum))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (_let_6 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (and (forall ((V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3i)))) (let ((_let_2 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3i) V2n) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) _let_1)) (_let_2 ((c_2Elist_2EEL_2E2 _let_1) ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0)))))))) (= V2n (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n)))) _let_2)))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EDROP_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 A_27b)))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (= (_let_3 ((c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0)) ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0))) (_let_3 c_2Emin_2E_3D_2E0))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2f_2E0 u) (V3f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0)))))) (= (_let_4 ((app_2E2 (_let_3 V2f_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V3f_27_2E0)) _let_1))))))))) (= _let_5 _let_2)) (= (_let_4 ((c_2Elist_2EMAP_2E2 (_let_3 V2f_2E0)) _let_5)) (_let_4 ((c_2Elist_2EMAP_2E2 (_let_3 V3f_27_2E0)) _let_2)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V3P_2E0 u) (V2Q_2E0 u) (V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27b) V5b_2E0))) (let ((_let_2 ((s A_27a) V4a_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2Q_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 V3P_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_4))) (let ((_let_11 (_let_10 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) F0_2E0)) _let_9))) _let_6))) _let_2))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_9) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))))))) (=> (forall ((V2Q_2E0 u) (V8a_2E0 u) (V9b_2E0 u)) (let ((_let_1 ((s A_27b) V9b_2E0))) (let ((_let_2 ((s A_27a) V8a_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2Q_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F2_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (=> (forall ((V3P_2E0 u) (V6a_2E0 u) (V7b_2E0 u)) (let ((_let_1 ((s A_27b) V7b_2E0))) (let ((_let_2 ((s A_27a) V6a_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3P_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F1_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (forall ((V0l2_2E0 u) (V1l1_2E0 u) (V2Q_2E0 u) (V3P_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 _let_3))) (let ((_let_8 (s _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_4 V2Q_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 (_let_4 ((app_2E2 (_let_8 ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_10))) _let_2) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 (_let_4 ((app_2E2 (_let_8 F2_2E0)) _let_10))) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 (_let_4 ((app_2E2 (_let_8 F1_2E0)) _let_5))) _let_2) _let_1)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V2l_2E0))) (let ((_let_6 (c_2Elist_2EEVERY_2E2 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_6 (_let_4 ((c_2Elist_2ESNOC_2E2 _let_1) _let_5))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27d))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Elist_2Elist _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2EMAP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EMAP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((((c_2EindexedLists_2EMAP2ia_2E4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V2f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i))) ((s (tyop_2Elist_2Elist A_27b)) V0l1_2E0)) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_1)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_9 (s _let_1))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3e1_2E0 u) (V4e2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4e2_2E0))) (let ((_let_3 (_let_1 V3e1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 (_let_1 (c_2Ecombin_2EI_2E1 _let_3))))) (_let_1 (c_2Ecombin_2EI_2E1 _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_1 V1l1_2E0))) (= (_let_4 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_2)))) (_let_4 ((c_2Elist_2EAPPEND_2E2 (_let_4 (_let_3 _let_5))) (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2EALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V1h_2E0 u) (V2t_2E0 u) (V3acc_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3acc_2E0))) (let ((_let_3 (c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)))) (let ((_let_4 (_let_1 V2t_2E0))) (= (_let_1 ((c_2Elist_2EREV_2E2 (_let_1 (_let_3 _let_4))) _let_2)) (_let_1 ((c_2Elist_2EREV_2E2 _let_4) (_let_1 (_let_3 _let_2)))))))))) (forall ((V0acc_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0acc_2E0))) (= (_let_1 ((c_2Elist_2EREV_2E2 (_let_1 c_2Elist_2ENIL_2E0)) _let_2)) _let_2)))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2Ellist__rep_2E2 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0x)))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Eone_2Eone))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2x))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2x) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_5)))) (= (_let_4 (_let_3 _let_5)) (_let_4 (_let_3 (_let_1 V1l2_2E0))))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 V1b_2E0))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_3) _let_7) _let_5)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_3))) _let_7) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) ((s A_27a) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3))))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Erich__list_2EELL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Erich__list_2EELL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Efinite__prefixes_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2EASSOC_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2EASSOC_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Elist_2EEL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) c_2Elist_2EEL_2E0)) _let_1))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n))))))) V1n))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2ECURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2ECURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (= mono_2Ec_2Enum_2E0 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_1))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_1)))))) (exists ((V2y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V2y_2E0)))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V0e_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1t_2E0 u) (V2h_2E0 u)) (let ((_let_1 ((s A_27a) V2h_2E0))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_2) A_27a))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (_let_3 V0x_2E0))) (let ((_let_8 (_let_6 (c_2Ellist_2ELTL__HD_2E1 _let_7)))) (and (= (= _let_7 (_let_3 c_2Ellist_2ELNIL_2E0)) (= _let_8 (_let_6 c_2Eoption_2ENONE_2E0))) (= (= _let_7 (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) _let_4))) (= _let_8 (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2ELAST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2ELAST_2E0)) _let_2))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) _let_2)) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1E_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_5 V0P_2E0)) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_5 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Equotient_2Erespects_2E2 ((s (_let_2 _let_3)) V1E_2E0)) _let_1))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V1E_2E0))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (c_2Equotient_2Erespects_2E2 _let_6))) (let ((_let_10 (app_2E2 (_let_7 V2Q_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_3))) _let_2)))))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 (_let_3 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 ((s (_let_1 _let_2)) V1E_2E0)) (_let_3 V2Q_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0t2_2E0 u) (V1t1_2E0 u) (V2t_2E0 u) (V3l_2E0 u) (V4h2_2E0 u) (V5h1_2E0 u) (V6h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_1 V0t2_2E0))) (let ((_let_6 (_let_4 V4h2_2E0))) (let ((_let_7 (_let_1 V1t1_2E0))) (let ((_let_8 (_let_4 V5h1_2E0))) (and (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EisPREFIX_2E2 _let_7) _let_5))) (= _let_8 _let_6)) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_5)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_4 V6h_2E0)) (_let_1 V2t_2E0)))) _let_2))) mono_2Ec_2Ebool_2EF) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EisPREFIX_2E2 _let_2) (_let_1 V3l_2E0)))) mono_2Ec_2Ebool_2ET))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V1g_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0f_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27c))) (let ((_let_7 (s (_let_4 _let_6)))) (= (_let_7 (c_2Elist_2EMAP_2E1 ((s (_let_1 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_2)))) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) (c_2Elist_2EMAP_2E1 _let_5))) ((s (_let_4 _let_3)) (c_2Elist_2EMAP_2E1 _let_2))))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27a) V0e_2E0))) (let ((_let_3 (_let_1 V1L_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EUNIQUE_2E2 _let_2) _let_3))) (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_2))) _let_3)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1ls_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1ls_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_2))) _let_3)) (_let_6 ((app_2E2 _let_5) ((s A_27a) ((c_2Elist_2EEL_2E2 _let_3) _let_2)))))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1ls_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_7 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_6 ((c_2Epred__set_2EIMAGE_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_2))) ((s (_let_7 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (_let_6 ((c_2Epred__set_2EIMAGE_2E2 _let_5) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3lim mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 ((s _let_7) V2f_2E0))) (let ((_let_9 (_let_6 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_9))) (= (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_6 _let_10)) F1_2E0)) (_let_4 (i_mono_2Etyop_2Enum_2Enum V3lim))))) _let_8))) _let_5)) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V4n) V3lim)))) (_let_3 (c_2Eoption_2ESOME_2E1 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V4n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) ((s A_27a) ((app_2E2 _let_8) _let_5))))))) (_let_3 c_2Eoption_2ENONE_2E0))))))))))))))) (=> (forall ((V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_7 (tyop_2Eoption_2Eoption _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_3 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_2)) (_let_8 (c_2Eoption_2ESOME_2E1 ((s _let_6) ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) ((s A_27a) ((app_2E2 _let_5) _let_2))))))))))))))))) (and (forall ((V2f_2E0 u) (V3lim mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_5))) (let ((_let_7 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_7 ((c_2Ellist_2ELGENLIST_2E2 _let_4) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V3lim))))) (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F1_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3lim))))) _let_4))) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) V0f_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_5 ((c_2Ellist_2ELGENLIST_2E2 _let_3) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (_let_5 ((c_2Ellist_2ELUNFOLD_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 V1l_2E0))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2l1_2E0)) (_let_1 V3l2_2E0)))) (exists ((V4l3_2E0 u) (V5l4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l4_2E0))) (let ((_let_3 (_let_1 V4l3_2E0))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (and (= (_let_1 (_let_4 _let_2)) (_let_1 V3l2_2E0)) (= (_let_1 (_let_4 _let_3)) (_let_1 V2l1_2E0)) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0m1_2E0 u) (V1m2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1m2_2E0))) (let ((_let_4 ((s (tyop_2Elist_2Elist A_27b)) V0m1_2E0))) (= (_let_2 ((c_2Elist_2ELIST__IGNORE__BIND_2E2 _let_4) _let_3)) (_let_2 ((c_2Elist_2ELIST__BIND_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) (c_2Ecombin_2EK_2E1 _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 V3l_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V0f_2E0))) (let ((_let_7 ((c_2Elist_2EFOLDL_2E3 _let_6) (_let_4 V1e_2E0)))) (= (_let_4 (_let_7 (_let_2 ((c_2Elist_2ESNOC_2E2 _let_1) _let_3)))) (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) (_let_4 (_let_7 _let_3))))) _let_1))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 (s A_27a))) (= (_let_4 (_let_3 (_let_1 ((c_2Elist_2ESNOC_2E2 (_let_4 V2x_2E0)) _let_2)))) (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2ELIST__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (= (_let_276 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Ec_2Elist_2ESET__TO__LIST_2Emono_2Etyop_2Enum_2Enum)) (_let_276 c_2Elist_2ESET__TO__LIST_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) (_let_6 _let_3)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDR_2E0)) _let_8))) _let_5))) _let_2)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))) (= _let_3 (_let_2 c_2Elist_2ENIL_2E0))))))) (forall ((V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 (_let_2 V0l_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0))) (= (_let_2 ((c_2EindexedLists_2EfupdLast_2E2 _let_6) _let_4)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) _let_3) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (c_2Elist_2EFRONT_2E1 _let_4))) (_let_2 ((c_2Elist_2ECONS_2E2 (_let_5 ((app_2E2 _let_6) (_let_5 (c_2Elist_2ELAST_2E1 _let_4))))) _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epair_2EUNCURRY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0l_2E0))) (= (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3)) _let_2) (= _let_3 _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ESNOC_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0xs_2E0))) (= (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V2x_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_3)) _let_2) (= _let_3 _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 A_27b)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ecombin_2EC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2EC_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0v_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0v_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (= (_let_1 (((c_2Elist_2Elist__CASE_2E3 ((s _let_3) c_2Elist_2ENIL_2E0)) _let_2) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_3) A_27b))) V1f_2E0))) _let_2))))) (forall ((V2a0_2E0 u) (V3a1_2E0 u) (V4v_2E0 u) (V5f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3a1_2E0))) (let ((_let_4 ((s A_27a) V2a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V5f_2E0))) (let ((_let_7 (s A_27b))) (= (_let_7 (((c_2Elist_2Elist__CASE_2E3 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) (_let_7 V4v_2E0)) _let_6)) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3)) (_let_2 (((c_2Elist_2EsplitAtPki_2E3 ((s (_let_5 _let_6)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6)) c_2Ecombin_2EK_2E0)) ((s (_let_5 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum V0n)))))) ((s (_let_4 (_let_4 _let_1))) c_2Ecombin_2EK_2E0)) _let_3)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Elist_2EINDEX__FIND_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EINDEX__FIND_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_3))) (not (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 (c_2Epred__set_2EREST_2E1 _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))))))))) (forall ((V2v_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V2v_2E0)))))))) (forall ((A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (_let_2 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3)) (_let_2 (((c_2Elist_2EsplitAtPki_2E3 ((s (_let_6 _let_7)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ecombin_2EK_2E0)) ((s (_let_6 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum V0n)))))) ((s (_let_4 _let_5)) (c_2Ecombin_2EK_2E1 ((s _let_5) c_2Ecombin_2EI_2E0)))) _let_3))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1x_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0l1_2E0))) (= (_let_1 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) (_let_3 ((c_2Elist_2EAPPEND_2E2 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_3 ((c_2Elist_2ECONS_2E2 _let_2) (_let_3 c_2Elist_2ENIL_2E0)))))) (_let_3 V2l2_2E0))))) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1A_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0B_2E0)))) (or (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27a)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0B_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1A_2E0))))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_5) V2p_2E0)) ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2))))))))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_4 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (and (= (_let_4 V2p_2E0) (_let_4 ((c_2Epair_2E_2C_2E2 ((s A_27a) (_let_3 _let_1))) ((s A_27b) (_let_3 ((s (tyop_2Elist_2Elist A_27b)) V1l2_2E0)))))) ((mono_2Ec_2Eprim__rec_2E_3C V3n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Etransfer_2Esurj_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1y_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V2x_2E0)))) ((s A_27b) V1y_2E0))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Elist_2EFLAT_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27e))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27e) A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27d))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1e_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))) (let ((_let_3 (_let_1 V0l_2E0))) (= (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3)) _let_2) (= _let_3 _let_2)))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b))) (= (=> (not (V1b V0t0)) (and (V2a V0t0) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0))) (_let_1 V0t0)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 tyop_2Emin_2Ebool)) (_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) tyop_2Emin_2Ebool)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (=> (exists ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) (_let_1 V1a_2E0)))) (_let_1 V2b_2E0)))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (c_2Elist_2ELLEX_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27g d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27g))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27g) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27g) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d)) (and (forall ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V3l2_2E0))) (let ((_let_4 (_let_1 V2l1_2E0))) (= (and (= _let_3 _let_2) (= _let_4 _let_2)) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) _let_2))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (_let_1 c_2Elist_2ENIL_2E0))) (= (and (= _let_2 _let_4) (= _let_3 _let_4)) (= _let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1ls_2E0 u) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2k) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EdropWhile_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))))) V2k)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) ((s A_27a) ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2k))) _let_2))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1k mono_2Etyop_2Enum_2Enum) (V0ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0ys_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (= V1k (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1k))))) _let_2))))))))) (forall ((V0ys_2E0 u) (V1k mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0ys_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1k)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2x_2E0))) (let ((_let_7 ((c_2Elist_2ELUPDATE_2E3 _let_6) _let_4))) (let ((_let_8 (c_2Elist_2ESNOC_2E2 (_let_5 V3y_2E0)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (_let_2 (_let_7 (_let_2 (_let_8 _let_3)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_9)) F0_2E0)) _let_4))) _let_3))) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_6) _let_3))) (_let_2 (_let_8 (_let_2 (_let_7 _let_3))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (= (_let_2 (((c_2Elist_2ELUPDATE_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_7)) c_2Elist_2ELUPDATE_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((F0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (F0 V0s) (and ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Estring_2Echar mono_2Ec_2Estring_2EisDigit) V0s) (not (= V0s mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2EASCIInumbers_2EfromDecString V0s) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (F0 V0s)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2EASCIInumbers_2Enum__from__dec__string V0s))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 V0l1_2E0))) (= (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_3)))) (_let_4 ((c_2Elist_2EAPPEND_2E2 (_let_4 (c_2Elist_2EFLAT_2E1 _let_5))) (_let_4 (c_2Elist_2EFLAT_2E1 _let_3))))))))))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (= (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (=> (forall ((V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F1_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2Eis__measure__maximal_2E3 ((s (_let_3 tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) (_let_5 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_6))) _let_2)))))))))))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (s _let_1))) (= (_let_6 (c_2Erich__list_2Elongest__prefix_2E1 _let_4)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (_let_6 c_2Elist_2ENIL_2E0)) (_let_6 (c_2Emin_2E_40_2E1 (_let_3 ((app_2E2 ((s (_let_5 _let_2)) F1_2E0)) _let_4))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (c_2Elist_2EMAP_2E2 ((s (_let_5 A_27b)) c_2Epair_2ESND_2E0)))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_8 (c_2Elist_2EMAP_2E2 ((s (_let_5 A_27a)) c_2Epair_2EFST_2E0)))) (let ((_let_9 (s (tyop_2Elist_2Elist A_27a)))) (=> (and (= (_let_9 (_let_8 _let_4)) (_let_9 (_let_8 _let_3))) (= (_let_7 (_let_6 _let_4)) (_let_7 (_let_6 _let_3)))) (= _let_4 _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27f))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27e))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27e) ((tyop_2Emin_2Efun A_27f) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u) (V1b_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0a_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_9 (s tyop_2Enum_2Enum))) (let ((_let_10 (c_2Elist_2EDROP_2E2 (_let_9 (i_mono_2Etyop_2Enum_2Enum V2n))))) (let ((_let_11 (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_6))))) (=> (and (= _let_11 (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_3)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) _let_11)) (= (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 (_let_10 _let_6))) (_let_2 (_let_10 _let_3)))))) (_let_8 (_let_10 (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3)))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERC_2E0)) _let_4)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_6 (s (_let_4 _let_5)))) (= (_let_6 (c_2Elist_2EINDEX__OF_2E1 _let_1)) (_let_6 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (c_2Eoption_2EOPTION__MAP_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) c_2Epair_2EFST_2E0)))) ((s (_let_4 _let_3)) ((c_2Elist_2EINDEX__FIND_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (=> (mono_2Ec_2Estring_2EisHexDigit V0c) (= (mono_2Ec_2EASCIInumbers_2EHEX (mono_2Ec_2EASCIInumbers_2EUNHEX V0c)) (mono_2Ec_2Estring_2EtoUpper V0c)))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d)) (and (forall ((V1l_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) _let_2)) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 (c_2Elist_2ETL_2E1 _let_2)))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)) (_let_2 (c_2Elist_2EHD_2E1 _let_1)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) V1n) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2ys_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2ys_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V0x_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_1)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1)))))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_4) ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod _let_4) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1x_2E0))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) _let_3)) _let_3))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0l_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 (c_2Elist_2EFLAT_2E1 _let_2)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_6 (c_2Elist_2ELIST__BIND_2E2 _let_2))) (and (= (_let_3 (_let_6 (_let_5 c_2Ecombin_2EI_2E0))) _let_4) (= (_let_3 (_let_6 (_let_5 F0_2E0))) _let_4))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) _let_4) _let_2)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_6 (_let_5 (_let_4 _let_3)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_3))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2EC_2E2 _let_7) _let_2)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2EC_2E0)) _let_7))) _let_2)))))))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s A_27b) V1h_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (and (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_5 c_2Epred__set_2EEMPTY_2E0)) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))) (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0l_2E0 u) (V1P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1P_2E0))) (let ((_let_7 (_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_6) _let_2)))) (_let_5 ((c_2Epred__set_2EINTER_2E2 (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_6))))) (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EdropWhile_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EdropWhile_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1l_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (= (= (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27b) V0x_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))) (exists ((V3x0_2E0 u)) (let ((_let_1 ((s A_27a) V3x0_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (and (= (_let_3 V1l_2E0) (_let_3 ((c_2Elist_2ECONS_2E2 _let_1) (_let_3 c_2Elist_2ENIL_2E0)))) (= (_let_2 V0x_2E0) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3l3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l3_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V0y_2E0)))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V2l2_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_2 V1l1_2E0))) (=> (= (_let_6 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_3))))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_7)))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 (_let_4 _let_3)))))))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2lo_2E0 u) (V3X_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2lo_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (_let_3 V0y_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_7 V3X_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_8))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_8))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_7 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_8) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27c) A_27a)) ((tyop_2Emin_2Efun (_let_1 A_27c)) (_let_1 A_27a))))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_2) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Elist_2ECONS_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Elist_2ECONS_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s A_27a) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s _let_1))) (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 _let_6) _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) c_2Eind__type_2ECONSTR_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P_2E0))) (= (= (_let_1 ((c_2Elist_2EFILTER_2E2 _let_5) _let_2)) (_let_1 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (forall ((V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)) _let_2))))) (forall ((A_27a d)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b))) (= (_let_1 V0t0) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V1b V0t0)) (V2a V0t0)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2)))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s A_27a))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_3 (c_2Elist_2ELAST_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (c_2Elist_2EHD_2E1 _let_2)))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0R1_2E0 u) (V1R2_2E0 u) (V2R3_2E0 u) (V3f_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V4g_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27c))) (let ((_let_6 ((s _let_5) V3f_2E0))) (let ((_let_7 (_let_1 A_27c))) (let ((_let_8 (tyop_2Emin_2Efun A_27c))) (let ((_let_9 ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) V2R3_2E0))) (let ((_let_10 (c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)))) (let ((_let_11 (tyop_2Emin_2Efun _let_7))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V1R2_2E0))) (let ((_let_14 (tyop_2Emin_2Efun _let_5))) (let ((_let_15 (tyop_2Emin_2Efun _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Equotient_2Erespects_2E2 ((s (_let_15 (_let_15 tyop_2Emin_2Ebool))) (_let_10 _let_13))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Equotient_2Erespects_2E2 ((s (_let_14 (_let_14 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_13) _let_9))) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Equotient_2Erespects_2E2 ((s (_let_11 (_let_11 tyop_2Emin_2Ebool))) (_let_10 _let_9))) ((s _let_7) ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)))))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2i mono_2Etyop_2Enum_2Enum) (V3k mono_2Etyop_2Enum_2Enum) (V0ys_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0ys_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 _let_4))) (= (and ((mono_2Ec_2Eprim__rec_2E_3C V3k) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= V2i V3k)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V2i))))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V3k))))) _let_2))))))))))) (forall ((V0ys_2E0 u) (V1x_2E0 u) (V2i mono_2Etyop_2Enum_2Enum) (V3k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0ys_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_6 (c_2Elist_2EEL_2E2 _let_5))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V1x_2E0))) (let ((_let_9 (_let_4 (i_mono_2Etyop_2Enum_2Enum V3k)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_11 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_12 (_let_11 _let_10))) (= (_let_7 (_let_6 (_let_2 (((c_2Elist_2ELUPDATE_2E3 _let_8) _let_9) _let_3)))) (_let_7 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_11 _let_12)) F0_2E0)) _let_5))) _let_9))) _let_3))) _let_8) (_let_7 (_let_6 _let_3)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2ls_2E0 u) (V3e_2E0 u) (V4R_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2Elist_2ELRC_2E4 ((s (_let_2 _let_3)) V4R_2E0)) _let_1) (_let_4 V1x_2E0)) (_let_4 V0y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 (_let_4 V3e_2E0)) ((s _let_3) (c_2Elist_2ELIST__TO__SET_2E1 _let_1)))))) (exists ((V5z_2E0 u) (V6t_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V4R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Elist_2ELRC_2E4 _let_5) ((s (tyop_2Elist_2Elist A_27a)) V6t_2E0)) _let_2) (_let_1 V0y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V3e_2E0)))) _let_2)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0l_2E0))) (= (_let_1 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))) (_let_3 ((c_2Elist_2ESNOC_2E2 _let_2) _let_4)))) _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2ESUM__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2ETL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2ETL_2E0)) _let_3))))))) (forall ((V0x Bool) (V1t1 Bool) (V2t2 Bool)) (=> (=> V1t1 V2t2) (=> (and V1t1 V0x) (and V2t2 V0x)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) (_let_3 _let_1)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_2) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u) (V4a_2E0 u) (V5a_27_2E0 u) (V6f_2E0 u) (V7f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l2_27_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_27_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 (_let_5 V5a_27_2E0))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))))) (let ((_let_8 (_let_1 V2l2_2E0))) (let ((_let_9 (_let_3 V0l1_2E0))) (let ((_let_10 (_let_5 V4a_2E0))) (=> (and (= _let_9 _let_4) (forall ((V8z_2E0 u) (V9b_2E0 u) (V10c_2E0 u)) (let ((_let_1 ((s A_27b) V10c_2E0))) (let ((_let_2 ((s A_27a) V9b_2E0))) (let ((_let_3 (s A_27c))) (let ((_let_4 (_let_3 V8z_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27c))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s ((tyop_2Emin_2Efun A_27c) _let_8)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s _let_6))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_7 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l1_27_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_5 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) V3l2_27_2E0))))))) (= (_let_3 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V6f_2E0)) _let_4))) _let_2))) _let_1)) (_let_3 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V7f_27_2E0)) _let_4))) _let_2))) _let_1))))))))))))))))) (= _let_10 _let_6) (= _let_8 _let_2)) (= (_let_5 ((((c_2Elist_2EFOLDL2_2E4 (_let_7 V6f_2E0)) _let_10) _let_9) _let_8)) (_let_5 ((((c_2Elist_2EFOLDL2_2E4 (_let_7 V7f_27_2E0)) _let_6) _let_4) _let_2))))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1x_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (c_2Elist_2EAPPEND_2E2 (_let_1 V0l1_2E0)))) (let ((_let_4 (c_2Elist_2ESNOC_2E2 ((s A_27a) V1x_2E0)))) (= (_let_1 (_let_3 (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 (_let_3 _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (and (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (forall ((V2a_2E0 u)) (let ((_let_1 ((s A_27a) V2a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2EHAS__SIZE_2E2 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_1))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Elist_2Elist__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2Elist__size_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0b1_2E0 u) (V1b2_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_1 A_27b)) V2f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_6 (_let_2 V0b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebag_2EFINITE__BAG_2E1 _let_6)))) (= (_let_5 (_let_4 (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_3)))) (_let_5 ((c_2Ebag_2EBAG__UNION_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V0P_2E0)) _let_1))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (forall ((A_27a d)) (and (forall ((V4x_2E0 u) (V5xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5xs_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V4x_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 _let_2)))))))) (forall ((V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (= (= _let_2 _let_3) (= _let_3 (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)) _let_2)))))))))) (forall ((V0x_2E0 u) (V1xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V1xs_2E0))) (= (= _let_3 _let_2) (= (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) _let_3)))) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0c Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0c))))) ((s A_27a) V2x_2E0)))) V0c)))) (forall ((V0c Bool) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V0c))))) _let_2))) (or (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) V0c))))))))) (= (_let_122 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum)) (_let_122 c_2Elist_2ESNOC_2E0)) (forall ((A_27a d)) (and (forall ((V1l_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (= (exists ((V3h_2E0 u) (V4l_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V2n) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (mono_2Ec_2Enum_2ESUC V2n)))) (forall ((V5l_2E0 u) (V6n1 mono_2Etyop_2Enum_2Enum) (V7n2 mono_2Etyop_2Enum_2Enum)) (= (exists ((V8l1_2E0 u) (V9l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V9l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V8l1_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))) V6n1) (= (_let_1 V5l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) V7n2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V5l_2E0)))) ((mono_2Ec_2Earithmetic_2E_2B V6n1) V7n2)))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) mono_2Ec_2Enum_2E0) (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2ELIST__TO__SET_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2ELIST__TO__SET_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EisPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EisPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27x))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27x))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewot_2Emex__less__eq_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Ewot_2Emex__less__eq_2E0)) _let_3))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_10 (s A_27b))) (= (_let_10 (((c_2Elist_2EsplitAtPki_2E3 _let_8) _let_6) _let_2)) (_let_10 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Elist_2EsplitAtPki_2E0)) _let_8))) _let_6))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EFRONT_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EFRONT_2E0)) _let_3))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 ((s (tyop_2Ellist_2Ellist A_27a)) V2l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_3)) _let_2) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_3)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0ps_2E0 u) (V1p_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s ((tyop_2Epair_2Eprod _let_2) _let_1)) V0ps_2E0))) (let ((_let_4 ((s _let_1) (c_2Epair_2ESND_2E1 _let_3)))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((s _let_5) V1p_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_2) (c_2Epair_2EFST_2E1 _let_3)))) (let ((_let_9 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 _let_3))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_8))) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_4))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_6))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_8))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_6))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_4))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_5 (c_2Elist_2ETL_2E1 (_let_5 ((c_2Elist_2EGENLIST_2E2 _let_4) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n))))))) (_let_5 ((c_2Elist_2EGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27d))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Erelation_2EWFREC_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Erelation_2EWFREC_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (= (_let_2 (((c_2Elist_2EPAD__LEFT_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) c_2Elist_2EPAD__LEFT_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_2))) _let_3))) (= _let_3 _let_2)))))))) (forall ((V0y_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (or (exists ((V3fv_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V2x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s A_27b) V3fv_2E0)))))) (= (_let_1 V2x_2E0) (_let_1 V0y_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) F0_2E0)) ((s A_27a) V0y_2E0)))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) V1n) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) _let_2)))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V0e_2E0)) (_let_1 V1l_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 (_let_2 (c_2Elist_2ELAST_2E1 _let_3))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2t_2E0 u) (V3h_2E0 u) (V4e_2E0 u) (V5R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_1 V4e_2E0)) ((s _let_5) (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Elist_2ELRC_2E4 ((s (_let_4 _let_5)) V5R_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 (_let_1 V3h_2E0)) _let_3))) (_let_1 V1x_2E0)) (_let_1 V0y_2E0))))) (exists ((V6z_2E0 u) (V7p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V5R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V4e_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Elist_2ELRC_2E4 _let_5) ((s (tyop_2Elist_2Elist A_27a)) V7p_2E0)) (_let_1 V1x_2E0)) _let_2))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l1_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1l2_2E0))))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V2f_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27c)))) (= (_let_7 (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_2)) (_let_7 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_5) A_27c)) (c_2Epair_2EUNCURRY_2E1 _let_6))) ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_1)) ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 ((s A_27x) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27x))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewot_2Epreds_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Ewot_2Epreds_2E0)) _let_1)))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (forall ((V3delta mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3delta) V0t0))) (=> (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4t) V3delta) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))))) (V1b _let_1)) (V2a _let_1)))))) (forall ((A_27a d)) (and (forall ((V2f_2E0 u) (V3n mono_2Etyop_2Enum_2Enum) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2f_2E0))) (let ((_let_6 (c_2Elist_2EGENLIST__AUX_2E3 _let_5))) (= (_let_1 ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n)))) _let_2)) (_let_1 ((_let_6 _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 _let_5) _let_4))) _let_2)))))))))))) (forall ((V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (= (_let_1 (((c_2Elist_2EGENLIST__AUX_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (_let_1 c_2Elist_2ENIL_2E0))) (=> (not (= _let_2 _let_3)) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) (c_2Elist_2ELAST_2E1 _let_2))) _let_3)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_3 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0l1_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2))) _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V0l1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 ((c_2Epred__set_2EDIFF_2E2 (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))) (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 _let_4)))) (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 (_let_2 ((c_2Elist_2EFILTER_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_4))) _let_3)))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u) (F2_2E0 u)) (=> (forall ((V0R_2E0 u) (V2h_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2h_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (app_2E2 _let_8))) (let ((_let_10 (s _let_5))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F1_2E0)) _let_8))) _let_2))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_3))) _let_2))))))))))))))))) (=> (forall ((V0R_2E0 u) (V2h_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V2h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_8))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 (_let_11 _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V2h_2E0 u) (V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2h_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F2_2E0)) _let_8))) _let_2))) _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2)))))))))))))))) (forall ((V0R_2E0 u) (V1l_2E0 u) (V2h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0R_2E0))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_6) _let_6)))) (let ((_let_10 (s _let_5))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_2) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F0_2E0)) _let_8))) _let_3))) _let_2))) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F1_2E0)) _let_8))) _let_3))) _let_2))))) (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_10 ((app_2E2 (_let_7 ((app_2E2 (_let_9 F2_2E0)) _let_8))) _let_3))) _let_2)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V0n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_2 _let_3))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_5))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m)))) (_let_6 ((app_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Eprim__rec_2EPRE V0n)) V2m)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_7 (c_2Elist_2EREVERSE_2E1 (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_5) _let_1)))) (_let_7 ((c_2Elist_2EGENLIST_2E2 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_5))) _let_1))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1l2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_4))) (forall ((V2e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V2e_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V0l1_2E0)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V1l2_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2)))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1l_2E0 u) (V2e_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V2e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 A_27a))) V0f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Ecombin_2EASSOC_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Ecombin_2ECOMM_2E1 _let_5)))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_5) _let_3) _let_1)) (_let_2 (((c_2Elist_2EFOLDR_2E3 _let_5) _let_3) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_5 (c_2Elist_2EGENLIST_2E2 _let_4))) (let ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL V0n))))) (and (= (_let_1 (_let_5 _let_6)) (_let_1 (((c_2Elist_2EGENLIST__AUX_2E3 _let_4) _let_6) _let_2))) (= (_let_1 (_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((V0a mono_2Etyop_2Estring_2Echar) (V1b mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Echar__le V0a) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Estring_2EORD V0a)) (mono_2Ec_2Estring_2EORD V1b)))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2x)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2x) V1n) (= (_let_4 ((c_2Elist_2EEL_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n)))))) (_let_4 ((app_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_3))) (let ((_let_6 (_let_5 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (c_2Eset__relation_2Edomain_2E1 _let_1))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (c_2Eset__relation_2Erange_2E1 _let_1))) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2Enub_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2Enub_2E0)) _let_3))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X3)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_1)))) (let ((_let_11 (_let_3 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_12))) (let ((_let_14 (s _let_10))) (= (_let_14 ((((c_2EDecode_2Edecode__blist_2E4 _let_9) _let_6) _let_5) _let_2)) (_let_14 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) c_2EDecode_2Edecode__blist_2E0)) _let_9))) _let_6))) _let_5))) _let_2)))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1xs_2E0 u) (V2h_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1xs_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (c_2Elist_2EEVERY_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3i))) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Elist_2ESET__TO__LIST_2E1 _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1ts_2E0 u) (V2tt_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2tt_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_4 ((s (tyop_2Elist_2Elist A_27a)) V1ts_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0f_2E0))) (let ((_let_7 (s A_27c))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3n) ((mono_2Ec_2Earithmetic_2EMIN (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (= (_let_7 (_let_3 ((s (tyop_2Elist_2Elist A_27c)) (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_1)))) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) ((s A_27a) (_let_3 _let_4))))) ((s A_27b) (_let_3 _let_1)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d)) (and (forall ((V3R_2E0 u) (V4h_2E0 u) (V5t_2E0 u) (V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_1 V4h_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (= (and (= _let_2 _let_4) (exists ((V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V3R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Elist_2ELRC_2E4 _let_5) ((s (tyop_2Elist_2Elist A_27a)) V5t_2E0)) _let_2) (_let_1 V7y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V6x_2E0)))) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Elist_2ELRC_2E4 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V3R_2E0)) (_let_3 ((c_2Elist_2ECONS_2E2 _let_4) (_let_3 V5t_2E0)))) _let_2) (_let_1 V7y_2E0))))))))))) (forall ((V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Elist_2ELRC_2E4 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) _let_3) _let_2))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ESET__TO__LIST_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ESET__TO__LIST_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V4f_2E0 u) (V5a0_2E0 u) (V6a1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V6a1_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V4f_2E0))) (let ((_let_5 (c_2EEncode_2Etree1__size_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 ((s _let_1) V5a0_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_2 ((c_2Elist_2ECONS_2E2 _let_7) _let_3))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2EEncode_2Etree__size_2E2 _let_4) _let_7)))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_3)))))))))))))) (forall ((V3f_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2EEncode_2Etree1__size_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V3f_2E0)) ((s (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a))) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V0f_2E0 u) (V1a0_2E0 u) (V2a1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V2a1_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((s A_27a) V1a0_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2EEncode_2Etree__size_2E2 _let_3) ((s _let_1) ((c_2EEncode_2ENode_2E2 _let_5) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2EEncode_2Etree1__size_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_4 ((c_2Elist_2EoEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))) (_let_4 ((c_2Elist_2EoEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V2m) V1n)))) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (_let_1 V0l1_2E0))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (s _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0)))))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 (_let_4 V2f1_2E0)) _let_1))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 (_let_4 V3f2_2E0)) _let_1))))))))))) (= _let_6 _let_2)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((c_2EEncode_2Eencode__list_2E2 (_let_4 V2f1_2E0)) _let_6))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((c_2EEncode_2Eencode__list_2E2 (_let_4 V3f2_2E0)) _let_2)))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (_let_3 (c_2Elist_2EHD_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n)))))) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27e))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27d))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) A_27f)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27f))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Elist_2EMAP2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EOPT__MMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EOPT__MMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l3_2E0 u) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0l3_2E0))) (let ((_let_3 (c_2Ellist_2ELPREFIX_2E2 (_let_1 V2l1_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1l2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2ELPREFIX_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EdropWhile_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Elist_2EdropWhile_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 (((c_2EEncode_2Eencode__sum_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EEncode_2Eencode__sum_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_4) (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_5 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n))))) _let_2)))))))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)))) (let ((_let_3 (_let_1 V1t_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (_let_2 _let_3)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))) (_let_1 (_let_2 (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)) _let_2))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0ls_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 _let_1))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V1f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_2))))))))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0y_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_8) _let_2))))))) (or (= _let_5 _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (and (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_1)))) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (c_2Elist_2EEL_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3n) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0R_2E0)) ((s A_27a) (_let_2 _let_3))))) ((s A_27b) (_let_2 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELNTH_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELNTH_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0h_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V0h_2E0)) (_let_1 V2l2_2E0))))) (= (_let_2 (c_2Elist_2ELAST_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1l1_2E0)) _let_3)))) (_let_2 (c_2Elist_2ELAST_2E1 _let_3))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V2l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V1l1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Elist_2ELIST__REL_2E3 _let_7) _let_5) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 _let_7))) ((s (tyop_2Elist_2Elist _let_6)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Eone_2Eone)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V2))))))) (and (forall ((V3l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V4l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5l3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V4l2) V3l1) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V5l3) V3l1)) (= V4l2 V5l3))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2l3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0l1))) (= (= (_let_1 V1l2) (_let_1 V2l3)) (= V1l2 V2l3))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) A_27a))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_1))) _let_4)) (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0x_2E0 u) (V1fs_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V1fs_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_5 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_6 ((s A_27b) V0x_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_3) (_let_8 ((c_2Elist_2ECONS_2E2 _let_6) (_let_8 c_2Elist_2ENIL_2E0))))) (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 (_let_5 ((c_2Elist_2ECONS_2E2 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) _let_6))) (_let_5 c_2Elist_2ENIL_2E0)))) _let_3)))))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (F0 V1n))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s A_27a) V2x_2E0))) (= (_let_4 ((c_2Elist_2EoEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_5) _let_2)))) (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1n)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_5))) (_let_4 ((c_2Elist_2EoEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Elist_2EoEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Elist_2ELAST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Elist_2ELAST_2E0)) _let_2))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2ETOCHAR ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) V0c)) (forall ((A_27a d)) (and (forall ((V0P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_5 (c_2Elist_2EEVERY_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2EEncode_2Ebiprefix_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption A_27a))) (_let_3 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E0)) _let_2))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0ls_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 c_2Elist_2ENIL_2E0))) (= (= (_let_3 (c_2Elist_2EFLAT_2E1 _let_2)) _let_4) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_4))) _let_2))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V0l2_2E0))))) (_let_1 (_let_4 _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0h_2E0 u) (V1g_2E0 u) (V2f_2E0 u) (V3ls1_2E0 u) (V4ls2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V4ls2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V3ls1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 (s tyop_2Enum_2Enum))) (=> (and (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((s A_27b) V6y_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Enum_2Enum)) V2f_2E0)) ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_1))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1g_2E0)) _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) V0h_2E0)) _let_1)))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_7 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_3 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Enum_2Enum)) V2f_2E0)) ((s (tyop_2Elist_2Elist _let_6)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_4) _let_1)) ((c_2Epair_2E_2C_2E2 _let_5) _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_3 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1g_2E0)) _let_5))))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_3 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) V0h_2E0)) _let_2))))))))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2ELIST__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eoption_2EOPTION__MAP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eoption_2EOPTION__MAP_2E0)) _let_3))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (= (exists ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (= (_let_3 V1x_2E0) (_let_3 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (= (_let_1 (c_2Eset__relation_2Erel__to__reln_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (_let_2 A_27b)))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 ((s _let_1) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_8))) (= (_let_5 (((c_2Elist_2Elist__CASE_2E3 _let_7) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) c_2Elist_2Elist__CASE_2E0)) _let_7))) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0m2_2E0 u) (V1m1_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V3l1_2E0)) (_let_1 V2l2_2E0))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1m1_2E0)) (_let_1 V0m2_2E0)))) (or (exists ((V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (and (= (_let_1 V1m1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V3l1_2E0)) _let_2))) (= (_let_1 V2l2_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V0m2_2E0)))))))) (exists ((V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (and (= (_let_1 V3l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V1m1_2E0)) _let_2))) (= (_let_1 V0m2_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V2l2_2E0)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERYi_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERYi_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ebag_2EBAG__OF__SET_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ebag_2EBAG__OF__SET_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 ((s (_let_2 A_27a)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_5 ((c_2Elist_2EMAP_2E2 _let_4) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_3) _let_1)))) (_let_5 ((c_2Elist_2EGENLIST_2E2 ((s (_let_2 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1r_2E0))) (let ((_let_4 (_let_2 ((c_2Eset__relation_2Errestrict_2E2 _let_3) (_let_1 V0s_2E0))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Ereflexive_2E2 _let_3) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_3))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Ereflexive_2E2 _let_4) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 _let_4))) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 _let_6) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_4) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1P_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))))) (exists ((V3i mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V3i) V2n) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3i))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1xs_2E0 u) (V2ys_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2ys_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1xs_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27c)) (((c_2Elist_2EMAP2_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V0f_2E0)) _let_3) _let_1))))) ((mono_2Ec_2Earithmetic_2EMIN (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 A_27a)) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n))))))) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))) (forall ((A_27a d) (A_27state d) (F0_2E0 u) (F4_2E0 u) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) _let_1))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_3))) (=> (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (forall ((V1h_2E0 u) (V2a_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((s _let_1) V2a_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (tyop_2Emin_2Efun _let_6))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) V0R_2E0)) (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) _let_2))))) (_let_7 ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) _let_5))) _let_2)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) F0_2E0)) _let_3))))))))) (=> (forall ((V4FOREACH_2E0 u) (V9t_2E0 u) (V7a_2E0 u) (V10u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) V7a_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((s _let_4) V9t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_4) _let_2))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_1))) (let ((_let_8 ((s _let_7) V4FOREACH_2E0))) (let ((_let_9 (s _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F4_2E0)) _let_8))) _let_5))) _let_3))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V10u)))) (_let_9 ((app_2E2 _let_8) ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) _let_3)))))))))))))))))) (=> (forall ((V7a_2E0 u) (V4FOREACH_2E0 u) (V8h_2E0 u) (V9t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V7a_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s _let_5) V9t_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_5) _let_3)) _let_1))) (let ((_let_8 ((s _let_7) V4FOREACH_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun _let_7))) (let ((_let_15 ((s A_27a) V8h_2E0))) (let ((_let_16 (s _let_1))) (let ((_let_17 (_let_12 _let_1))) (let ((_let_18 (_let_2 _let_17))) (let ((_let_19 (_let_14 _let_18))) (= (_let_16 ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s (_let_10 _let_19)) F3_2E0)) _let_4))) _let_8))) _let_15))) _let_6)) (_let_16 (c_2Ecombin_2EI_2E1 (_let_16 ((c_2Estate__transformer_2EBIND_2E2 (_let_16 ((app_2E2 _let_4) _let_15))) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_14 _let_13)) F4_2E0)) _let_8))) _let_6))) _let_4))))))))))))))))))))))))))) (=> (forall ((V4FOREACH_2E0 u) (V6v_2E0 u) (V7a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_4) _let_3)) _let_1))) (let ((_let_6 ((s _let_5) V4FOREACH_2E0))) (let ((_let_7 ((s _let_3) V7a_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_2 (_let_8 _let_1)))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (tyop_2Emin_2Efun _let_3))) (let ((_let_13 (s _let_1))) (let ((_let_14 ((s _let_4) V6v_2E0))) (let ((_let_15 (_let_12 _let_1))) (let ((_let_16 (_let_8 _let_15))) (= (_let_13 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s (_let_10 _let_16)) F2_2E0)) _let_6))) _let_14))) _let_7)) (_let_13 (((c_2Elist_2Elist__CASE_2E3 _let_14) (_let_13 (c_2Ecombin_2EI_2E1 (_let_13 (c_2Estate__transformer_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))) ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_12 _let_11)) F3_2E0)) _let_7))) _let_6)))))))))))))))))))))) (=> (forall ((V4FOREACH_2E0 u) (V5a_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4FOREACH_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) ((tyop_2Emin_2Efun _let_2) _let_1)))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 ((s _let_4) V5a_27_2E0))) (let ((_let_11 (s _let_1))) (= (_let_11 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_9 _let_5)) F1_2E0)) _let_7))) _let_10)) (_let_11 ((c_2Epair_2Epair__CASE_2E2 _let_10) ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_7))))))))))))))))) (= (_let_5 c_2Estate__transformer_2EFOREACH_2E0) (_let_5 ((c_2Erelation_2EWFREC_2E2 ((s _let_4) (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)))) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F1_2E0))))))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (= (forall ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1l_2E0))) (=> (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0list_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (_let_2 _let_1)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V0list_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0)))) ((s _let_3) c_2Elist_2ECONS_2E0)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27c) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0w_2E0 u) (V1p_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((s _let_3) V1p_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) (_let_5 (c_2Eset__relation_2Estrict_2E1 (_let_5 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))) (forall ((V0w_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellfounded_2E1 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) F0_2E0)) ((s _let_1) V0w_2E0))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Ellist_2Ellist A_27a)) V1l_2E0)))) (exists ((V2n mono_2Etyop_2Enum_2Enum) (V3e_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s A_27a) V3e_2E0))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (= (_let_1 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))) ((s (tyop_2Ellist_2Ellist A_27a)) V1l_2E0)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2M_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2M_2E0))) (let ((_let_3 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (_let_1 V1L_2E0))) (= (_let_1 (_let_3 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27state d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27state) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27state) A_27a)) V0f_2E0))) (let ((_let_3 (s ((tyop_2Epair_2Eprod A_27a) A_27state)))) (= (_let_3 ((c_2Estate__transformer_2EREAD_2E2 _let_2) _let_1)) (_let_3 ((c_2Epair_2E_2C_2E2 ((s A_27a) ((app_2E2 _let_2) _let_1))) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Elinear__order_2E2 (_let_3 ((c_2Eset__relation_2Errestrict_2E2 _let_4) _let_2))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2Egcdset_2Egcdset ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0x) V1s)) ((mono_2Ec_2Egcd_2Egcd V0x) (mono_2Ec_2Egcdset_2Egcdset V1s)))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Erich__list_2EUNZIP__FST_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (= (F0 V0s) (or (= V0s ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (= V0s mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)))) (=> (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum)) (= ((F1 V0s) V1n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) (mono_2Ec_2Epred__set_2EMIN__SET ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V0s) mono_2Ec_2Enum_2E0)))))) (=> (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V2d mono_2Etyop_2Enum_2Enum)) (= ((F3 V0s) V2d) (forall ((V3e mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V3e) V0s) ((mono_2Ec_2Edivides_2Edivides V2d) V3e))))) (=> (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V2d mono_2Etyop_2Enum_2Enum)) (= ((F2 V0s) V2d) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V2d) ((F3 V0s) V2d)))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2Egcdset_2Egcdset V0s) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V0s)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Epred__set_2EMAX__SET ((mono_2Ec_2Epred__set_2EINTER_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F1 V0s))) (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F2 V0s)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_275 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_275 c_2Ecombin_2EI_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (= (_let_274 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (_let_274 c_2Eoption_2ENONE_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2)))) (= _let_3 _let_2))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2g_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27c) V5y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V2g_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V4x_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) V0f_2E0))) (let ((_let_11 (_let_2 A_27a))) (let ((_let_12 (_let_8 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_3) _let_12))) (= (_let_5 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) F0_2E0)) _let_10))) _let_4))) _let_6))) _let_1)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 _let_10) _let_6))) ((s A_27b) ((app_2E2 _let_4) _let_1))))))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2g_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V3l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (_let_7 (_let_4 A_27a)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_9) _let_3) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_6) _let_1)))) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_6))) _let_3) _let_1))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0) V1))) (_let_3 ((c_2Erelation_2EWFREC_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Enumposrep_2En2l V0b) V2n))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1x) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum _let_1)) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b)) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V1x) _let_1) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV V2n) ((mono_2Ec_2Earithmetic_2EEXP V0b) V1x))) V0b))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (and (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (= _let_3 _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (=> (forall ((V3P (-> mono_2Etyop_2Estring_2Echar Bool)) (V4l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 ((mono_2Ec_2Estring_2EFIELDS V3P) (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V5r)))) (let ((_let_2 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V4l))) (= (((F0 V3P) V4l) V5r) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V4l)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) _let_1)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V5r)) (_let_2 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_2 _let_1))))))) (and (forall ((V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2h mono_2Etyop_2Estring_2Echar) (V3P (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2h) V1t))) (= ((mono_2Ec_2Estring_2EFIELDS V3P) _let_1) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (F0 V3P))) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V3P) _let_1))))) (forall ((V0P (-> mono_2Etyop_2Estring_2Echar Bool))) (= ((mono_2Ec_2Estring_2EFIELDS V0P) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V1e mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1e) V0s) ((mono_2Ec_2Edivides_2Edivides (mono_2Ec_2Egcdset_2Egcdset V0s)) V1e))) (= (_let_273 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ecombin_2EC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_273 c_2Ecombin_2EC_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0v Bool)) (((mono_2Ec_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2Emono_2Etyop_2Emin_2Ebool V0v) mono_2Ec_2Ebool_2ET) V0v)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (= (_let_70 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool)) (_let_70 c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 Bool)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_3) _let_2) (_let_7 (i_mono_2Etyop_2Emin_2Ebool X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E0)) _let_3))) _let_2))) X2)))))))))) (= (mono_2Ec_2Egcdset_2Egcdset mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a2_2E0 u) (V3a3_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0a0_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b))) V1a1_2E0)) ((s (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d)) V2a2_2E0)) ((s A_27b) V3a3_2E0)))) (or (exists ((V5b_2E0 u) (V6df_2E0 u) (V7g_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 ((s A_27c) V5b_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) A_27b))) (let ((_let_7 (s A_27b))) (and (= (_let_7 V3a3_2E0) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_6)) V1a1_2E0)) _let_3))) ((s _let_5) V7g_2E0)))) (forall ((V8d_2E0 u)) (let ((_let_1 ((s A_27d) V8d_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0a0_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun _let_3) A_27b))) V1a1_2E0)) ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V6df_2E0)) _let_1))) ((s A_27b) ((app_2E2 ((s _let_3) V7g_2E0)) _let_1)))))))))) (= (_let_4 V2a2_2E0) (_let_4 ((c_2Einftree_2EiNd_2E2 _let_3) ((s (_let_2 _let_1)) V6df_2E0))))))))))))) (exists ((V4a_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (s (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 V3a3_2E0) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0a0_2E0)) _let_1))) (= (_let_2 V2a2_2E0) (_let_2 (c_2Einftree_2EiLf_2E1 _let_1))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_2) _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Eirreflexive_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V1g mono_2Etyop_2Enum_2Enum)) (=> (forall ((V2e mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2e) V0s) ((mono_2Ec_2Edivides_2Edivides V1g) V2e))) ((mono_2Ec_2Edivides_2Edivides V1g) (mono_2Ec_2Egcdset_2Egcdset V0s)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EDELETE_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 Bool)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u) (V1X_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 (c_2EfixedPoint_2Elfp_2E1 _let_2)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V2y_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V1X_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 ((app_2E2 _let_2) _let_7)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGINTER_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2EfixedPoint_2Eempty_2E1 ((s A_27a) V0x_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (forall ((A_27a d) (V0h_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0h_2E0))) (let ((_let_4 (s (tyop_2Ellist_2Ellist _let_1)))) (= (_let_2 (c_2Ellist_2ELFLATTEN_2E1 (_let_4 ((c_2Ellist_2ELCONS_2E2 _let_3) (_let_4 c_2Ellist_2ELNIL_2E0))))) _let_3)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (and (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V1X_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EfixedPoint_2Edense_2E2 _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_3 (c_2EfixedPoint_2Egfp_2E1 _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EfixedPoint_2Edense_2E2 _let_2) ((s _let_1) (c_2EfixedPoint_2Egfp_2E1 _let_2))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (c_2Ebag_2ESUB__BAG_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s A_27a) V2e_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__IN_2E2 _let_6) _let_3)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_6) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) c_2EfixedPoint_2Eempty_2E0))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 (c_2EfixedPoint_2Egfp_2E1 _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (and (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V1X_2E0))) (=> (= _let_4 (_let_3 ((app_2E2 _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_3 (c_2EfixedPoint_2Egfp_2E1 _let_2))))))))))) (= _let_4 (_let_3 ((app_2E2 _let_2) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (_let_1 V1g_2E0))) (= (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_2) _let_3)) (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_3) _let_2))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2))))) (forall ((V1t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEL_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s _let_2))) (= (_let_9 (((c_2EfixedPoint_2Efnsum_2E3 _let_6) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2EfixedPoint_2Efnsum_2E0)) _let_6))) _let_5))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (_let_1 c_2EfixedPoint_2Eempty_2E0))) (and (= (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_3) _let_2)) _let_2) (= (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_2) _let_3)) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1f2_2E0))) (let ((_let_3 (_let_1 V0f1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2EfixedPoint_2Emonotone_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2EfixedPoint_2Emonotone_2E1 (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) _let_4)) V1n) _let_4))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2EfixedPoint_2Efnsum_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2EfixedPoint_2Efnsum_2E0)) _let_5))) _let_4))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u) (V2X_2E0 u)) (let ((_let_1 ((s A_27b) V2X_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_4 (_let_3 V1f2_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_3 V0f1_2E0))) (= (_let_5 (((c_2EfixedPoint_2Efnsum_2E3 _let_6) _let_4) _let_1)) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 ((app_2E2 _let_6) _let_1))) (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V1X_2E0 u) (V2Y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2Y_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (_let_2 V1X_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_3))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2h_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V2h_2E0))) (let ((_let_3 (_let_1 V1g_2E0))) (let ((_let_4 (c_2EfixedPoint_2Efnsum_2E2 (_let_1 V0f_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 _let_3) _let_2)))) (_let_1 ((c_2EfixedPoint_2Efnsum_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)) _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2EfixedPoint_2Emonotone_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2X_2E0 u)) (let ((_let_1 ((s A_27a) V2X_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 (_let_3 V0f_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 (((c_2EfixedPoint_2Efnsum_2E3 _let_5) _let_4) _let_1)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 (_let_6 ((app_2E2 _let_4) _let_1))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 (_let_6 ((app_2E2 _let_5) _let_1))) _let_7))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1e_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))) (exists ((V2pfx_2E0 u) (V3sfx_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2pfx_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (and (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) (_let_1 c_2Elist_2ENIL_2E0)))))) (_let_1 V3sfx_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EfixedPoint_2Eclosed_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EfixedPoint_2Eclosed_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 _let_1)) (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((A_27a d) (V0f1_2E0 u) (V1f2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V1f2_2E0))) (let ((_let_4 (_let_2 V0f1_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 (c_2EfixedPoint_2Elfp_2E1 (_let_2 ((c_2EfixedPoint_2Efnsum_2E2 _let_4) _let_3)))))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2EfixedPoint_2Emonotone_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2EfixedPoint_2Emonotone_2E1 _let_3)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (c_2EfixedPoint_2Elfp_2E1 _let_3))) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (c_2EfixedPoint_2Elfp_2E1 _let_4))) _let_6))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 ((app_2E2 _let_2) (_let_3 c_2Epred__set_2EEMPTY_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2EfixedPoint_2Emonotone_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2EfixedPoint_2Elfp_2E1 _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2EfixedPoint_2Elfp_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2EfixedPoint_2Elfp_2E0)) _let_3)))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (V0f_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EfixedPoint_2Edense_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 ((app_2E2 _let_4) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V4t) V2t0) ((mono_2Ec_2Eprim__rec_2E_3C V3delta) V4t)) (not (V1b V4t)))) (V1b V3delta) (V0a V3delta) ((mono_2Ec_2Earithmetic_2E_3C_3D V3delta) V2t0))) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V0a) V1b) V2t0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_3)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((app_2E2 _let_6) _let_3))) _let_3))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_1))) (= (_let_6 (c_2EfixedPoint_2Elfp_2E1 _let_4)) (_let_6 (c_2Epred__set_2EBIGINTER_2E1 ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)))) (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V1X_2E0))) (let ((_let_5 (c_2Epred__set_2ESUBSET_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 ((app_2E2 _let_2) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 (c_2EfixedPoint_2Egfp_2E1 _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)))) (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 (c_2EfixedPoint_2Egfp_2E1 _let_2)))) (let ((_let_5 (_let_3 V1X_2E0))) (let ((_let_6 (c_2Epred__set_2ESUBSET_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 ((app_2E2 _let_2) (_let_3 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_4))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EfixedPoint_2Edense_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EfixedPoint_2Edense_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 (c_2EfixedPoint_2Elfp_2E1 _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (and (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (=> (= _let_3 (_let_2 ((app_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2EfixedPoint_2Elfp_2E1 _let_4))) _let_3))))))))) (= _let_4 (_let_3 ((app_2E2 _let_2) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Edecode__option_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Edecode__option_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_3)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 ((app_2E2 _let_6) _let_3))))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_1))) (= (_let_6 (c_2EfixedPoint_2Egfp_2E1 _let_4)) (_let_6 (c_2Epred__set_2EBIGUNION_2E1 ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (s A_27b))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_4 (c_2Elist_2ELAST_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_3) _let_2)))) (_let_4 ((app_2E2 _let_3) ((s A_27a) (c_2Elist_2ELAST_2E1 _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2EfixedPoint_2Efnsum_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EfixedPoint_2Efnsum_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2e_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V2e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) ((mono_2Ec_2Earithmetic_2E_3E V1n) mono_2Ec_2Enum_2E0)) (exists ((V3b_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 (_let_1 V0b_2E0)) ((s A_27a) V2e_2E0)) (_let_1 V3b_27_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_2)))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V4y_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_7 ((s (_let_5 A_27b)) V2f_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (= _let_4 (_let_3 ((app_2E2 _let_7) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) _let_6)))) (= (_let_2 (((c_2Epred__set_2ELINV__OPT_2E3 _let_7) _let_6) _let_4)) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s (_let_1 A_27b)) V2f_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 ((c_2Epred__set_2EINJ_2E3 _let_3) _let_2))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 V0t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1p mono_2Etyop_2Enum_2Enum)) (= (F1 V1p) ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V1p) (mono_2Ec_2Epred__set_2Ecount V1p)))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (F0 V0n) (= V0n mono_2Ec_2Enum_2E0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Ecount V0n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (F0 V0n)) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 F1) (mono_2Ec_2Eprim__rec_2EPRE V0n)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ECOMPL_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Epred__set_2ECOMPL_2E0)) _let_4))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_2))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (= (_let_22 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Emin_2Ebool)) (_let_22 c_2Epred__set_2EUNIV_2E0)) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (= (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2)))))) (forall ((F1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (F0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (=> (forall ((V2c mono_2Etyop_2Estring_2Echar) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((F1 V2c) V3t) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2c) (mono_2Ec_2Estring_2EEXPLODE V3t)))) (=> (forall ((V1v mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (= (F0 V1v) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1v) F1))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Estring_2EEXPLODE V0s) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Estring_2EDEST__STRING V0s)) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) F0)))))) (forall ((A_27c d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (tyop_2Emin_2Efun A_27f))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27e)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (_let_1 _let_5)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_3 _let_9))) (let ((_let_12 (_let_5 _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_12)) F0_2E0)) _let_7))) _let_2))) _let_1)) (_let_10 ((c_2Epair_2E_2C_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1)))))))))))))))))) (forall ((V0y_2E0 u) (V1x_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s A_27b) V0y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_10 ((tyop_2Epair_2Eprod _let_9) tyop_2Emin_2Ebool))) (let ((_let_11 (_let_5 (_let_3 _let_10)))) (let ((_let_12 (tyop_2Emin_2Efun _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) ((s (_let_12 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s (_let_12 _let_10)) (c_2Epair_2EUNCURRY_2E1 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2x_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EFUNSET_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s (_let_1 A_27b)) V2x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (= (_let_1 (_let_4 (_let_1 (_let_4 _let_2)))) _let_2))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (= (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 V1s_2E0)) (_let_2 V2t_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0)))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0t_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)) ((s A_27a) ((app_2E2 ((s (_let_3 A_27a)) V3g_2E0)) _let_2)))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2P_2E0 u) (V3P_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1)))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEVERY_2E2 (_let_3 V2P_2E0)) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEVERY_2E2 (_let_3 V3P_27_2E0)) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V2f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7)))) (= (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2))) (= _let_3 _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0l1_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (= (_let_1 (c_2Ellist_2ELZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_2)) ((c_2Epair_2E_2C_2E2 ((s _let_3) V0l1_2E0)) ((s _let_2) c_2Ellist_2ELNIL_2E0))))) (_let_1 c_2Ellist_2ELNIL_2E0)))))) (forall ((V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (= (_let_1 (c_2Ellist_2ELZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_2)) ((c_2Epair_2E_2C_2E2 ((s _let_3) c_2Ellist_2ELNIL_2E0)) ((s _let_2) V1l2_2E0))))) (_let_1 c_2Ellist_2ELNIL_2E0)))))) (forall ((V2h1_2E0 u) (V3h2_2E0 u) (V4t1_2E0 u) (V5t2_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t2_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V4t1_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 (s (tyop_2Ellist_2Ellist _let_8)))) (let ((_let_10 ((s A_27b) V3h2_2E0))) (let ((_let_11 ((s A_27a) V2h1_2E0))) (= (_let_9 (c_2Ellist_2ELZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Ellist_2ELCONS_2E2 _let_11) _let_6))) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_10) _let_3)))))) (_let_9 ((c_2Ellist_2ELCONS_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_11) _let_10))) (_let_9 (c_2Ellist_2ELZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3))))))))))))))))))))) (= (_let_251 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epred__set_2ESUBSET_2Emono_2Etyop_2Enum_2Enum)) (_let_251 c_2Epred__set_2ESUBSET_2E0)) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2ESING_2E1 _let_2))))) (let ((_let_5 (_let_1 V0t_2E0))) (let ((_let_6 (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2ESING_2E1 _let_5))))) (let ((_let_7 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2ESING_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_5))))) (or (and _let_4 (= _let_5 _let_7)) (and _let_6 (= _let_2 _let_7)) (and _let_6 (= _let_2 _let_5) _let_4))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1Q_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (or (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) (_let_2 V1x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V3x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0l4_2E0 u) (V1l3_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V3l1_2E0))) (let ((_let_5 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V4R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V0l4_2E0))) (let ((_let_8 (_let_3 V1l3_2E0))) (let ((_let_9 (s tyop_2Enum_2Enum))) (= (and (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_8))) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_7)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_8))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_7)))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (V0b0_2E0 u) (V1e_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (let ((_let_4 (_let_1 V0b0_2E0))) (= (= _let_4 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__DELETE_2E3 _let_4) _let_3) _let_2))))))))) (forall ((A_27a d) (F2_2E0 u) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_4) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F2_2E0)) _let_6))) _let_5))) _let_4))))))))))))))) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_7 _let_13)) F0_2E0)) _let_6))) _let_4))) _let_5)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_5) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F2_2E0)) _let_6))) _let_5))) _let_4))))))))))))))))))) (=> (forall ((V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F1_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_7))) (let ((_let_9 (app_2E2 (_let_8 F1_2E0)))) (let ((_let_10 (s _let_5))) (let ((_let_11 (_let_3 V0P_2E0))) (= (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_11))) _let_4)))) (_let_3 ((c_2Epred__set_2EINTER_2E2 (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 (_let_9 _let_11))))) (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 (_let_9 _let_4))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0s_2E0))) (= (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0)) (= (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27b)) V1f_2E0)) _let_4)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)) (_let_1 (c_2Epred__set_2ECOMPL_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_3))) (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 (_let_3 V2f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_6 (_let_5 V0t_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V1h_2E0))) (= (= (_let_5 ((c_2Ellist_2ELGENLIST_2E2 _let_4) _let_1)) (_let_5 ((c_2Ellist_2ELCONS_2E2 _let_8) _let_6))) (and (= _let_8 (_let_7 ((app_2E2 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (= _let_6 (_let_5 ((c_2Ellist_2ELGENLIST_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) _let_1)))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))) (=> (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_4 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_4 _let_8)) F0_2E0)) _let_2))) _let_3)) (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V0y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0y_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) _let_3)))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1s_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Elist_2EMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2EMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d)) (and (forall ((V0P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V1P_2E0 u) (V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_5 (c_2Elist_2EEXISTS_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0z_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (= (_let_4 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) V2f_2E0)) _let_3)) (_let_4 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0z_2E0)) (_let_4 c_2Epred__set_2EEMPTY_2E0)))) (and (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((s A_27b) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2)) (_let_1 V0z_2E0))))))) (not (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_2))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V0r_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 _let_3))) (let ((_let_5 (_let_1 V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5))) (= (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_5) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (= (_let_22 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Emin_2Ebool)) (_let_22 c_2Epred__set_2EEMPTY_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0xM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))))) (let ((_let_3 (_let_2 V0xM_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))))) (and (= (_let_2 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 (_let_5 (c_2EerrorStateMonad_2EES__GUARD_2E1 (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))))) _let_3)) (_let_2 c_2EerrorStateMonad_2EES__FAIL_2E0)) (= (_let_2 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 (_let_5 (c_2EerrorStateMonad_2EES__GUARD_2E1 (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))))) _let_3)) _let_3)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 (s (_let_1 _let_2)))) (let ((_let_5 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_6 (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Epartial__order_2E2 _let_5) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2EWeakOrder_2E1 (_let_4 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_6) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erelation_2ERSUBSET_2E2 _let_6) (_let_4 (c_2Eset__relation_2ERRUNIV_2E1 _let_3))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1Q_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Epred__set_2Echooser_2E2 _let_1) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_2 (c_2Epred__set_2ECHOICE_2E1 _let_1)))))) (forall ((V1s_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Epred__set_2Echooser_2E2 _let_4) (_let_2 (i_mono_2Etyop_2Enum_2Enum _let_1)))) (_let_5 ((c_2Epred__set_2Echooser_2E2 (_let_3 (c_2Epred__set_2EREST_2E1 _let_4))) (_let_2 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))))) (forall ((V3s_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V3s_2E0))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Epred__set_2Echooser_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V4n)))))) (_let_4 ((c_2Epred__set_2Echooser_2E2 (_let_2 (c_2Epred__set_2EREST_2E1 _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V4n)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s) (forall ((V1e mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Epred__set_2ESUM__SET V0s))) (= (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V0s) V1e)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1e) V0s)) ((mono_2Ec_2Earithmetic_2E_2D _let_1) V1e)) _let_1)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1s_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_6) _let_2)))) (_let_5 ((c_2Epred__set_2EINTER_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_3)) _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_3)))) (not (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2EREST_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3)) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Ecount ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0n) (mono_2Ec_2Epred__set_2Ecount V0n)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUBLIST_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 c_2Epred__set_2EUNIV_2E0)))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) _let_3)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (and (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_4)) _let_2) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_3)))) _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Errestrict_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2Epred__set_2ECOMPL_2E1 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (_let_1 c_2Epred__set_2EUNIV_2E0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (c_2Ebool_2EIN_2E2 _let_6))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_4)))))))))))))))) (=> (forall ((V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_7 _let_13)) F0_2E0)) _let_5))) _let_4))) _let_6)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_4))))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (= (_let_3 ((c_2Epred__set_2EINTER_2E2 _let_5) _let_4)) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_5))) _let_4))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d)) (and (forall ((V4l1_2E0 u) (V5l2_2E0 u) (V6l1_27_2E0 u) (V7l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l1_27_2E0))) (let ((_let_3 (_let_1 V4l1_2E0))) (let ((_let_4 (_let_1 V7l2_27_2E0))) (let ((_let_5 (_let_1 V5l2_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_4)))) (= (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_5)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))) (and (= _let_5 _let_4) (= _let_3 _let_2))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2l1_27_2E0 u) (V3l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_27_2E0))) (let ((_let_3 (_let_1 V2l1_27_2E0))) (let ((_let_4 (_let_1 V1l2_2E0))) (let ((_let_5 (_let_1 V0l1_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (and (= _let_4 _let_2) (= _let_5 _let_3)) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_4)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (= (_let_272 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_272 c_2Epred__set_2EGSPEC_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (or (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (exists ((V3f_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27a)) V3f_27_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s A_27b) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_7))) (= (_let_3 (((c_2Ecombin_2EUPDATE_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2Ecombin_2EUPDATE_2E0)) _let_6))) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1t_2E0 u) (V2sp_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2sp_2E0))) (= (_let_5 ((c_2Epred__set_2EINTER_2E2 (_let_5 (_let_4 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2))))) _let_6)) (_let_5 ((c_2Epred__set_2EDIFF_2E2 _let_6) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V2s_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_2) _let_5))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_5))) (= _let_3 _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2Ecount V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 _let_3))) (= (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) _let_3)))) (_let_1 (_let_4 _let_2)))))))) (forall ((A_27a d) (V0e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 ((s A_27a) V0e_2E0))) (= (_let_1 (c_2Ebag_2EEL__BAG_2E1 _let_2)) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))))) (= (_let_271 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (_let_271 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1l_2E0 u) (V2h_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (= (exists ((V4x0_2E0 u) (V5t0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5t0_2E0))) (let ((_let_3 ((s A_27a) V4x0_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27b)))) (and (= (_let_6 V0t_2E0) (_let_6 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) (= (_let_5 V2h_2E0) (_let_5 ((app_2E2 _let_4) _let_3))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))) (= (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3f_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27b) V2h_2E0)) (_let_1 V0t_2E0))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) (c_2Esum_2EINR_2E1 _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0t_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_2 _let_1)) c_2Esum_2EINR_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0t_2E0)))))))) (forall ((A_27a d) (V0g_2E0 u) (V1f_2E0 u) (V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0g_2E0)))) (let ((_let_4 (s _let_2))) (=> (and (not (= V2m V3n)) (forall ((V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)))) (let ((_let_5 (app_2E2 (_let_4 V1f_2E0)))) (let ((_let_6 (s _let_3))) (= (_let_6 ((app_2E2 (_let_4 V0g_2E0)) _let_2)) (_let_6 ((c_2Epred__set_2EDIFF_2E2 (_let_6 (_let_5 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V5n)))))) (_let_6 (_let_5 _let_2)))))))))))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V1f_2E0)))) (let ((_let_4 (s _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n))))) (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V4n)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m))))) (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINTER_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0 Bool) (V1 (-> Bool Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2))))) (and (= (_let_1 (_let_4 _let_3)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) _let_3))) (= (_let_1 (_let_4 _let_2)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27a) V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_3))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))))))))))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 (_let_5 (c_2Erelation_2ERC_2E1 (_let_5 (c_2Elist_2ESHORTLEX_2E1 _let_3))))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erelation_2ERDOM_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Erelation_2ERDOM_2E0)) _let_3))))))))) (and (forall ((V1s (-> mono_2Etyop_2Enum_2Enum Bool)) (V2e1 mono_2Etyop_2Enum_2Enum) (V3e2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V3e2) V1s))) (= (mono_2Ec_2Epred__set_2EMIN__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V2e1) _let_1)) ((mono_2Ec_2Earithmetic_2EMIN V2e1) (mono_2Ec_2Epred__set_2EMIN__SET _let_1))))) (forall ((V0e mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2EMIN__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0e) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) V0e))) (forall ((A_27a d) (A_27b d) (V0zs_2E0 u) (V1ys_2E0 u) (V2xs_2E0 u) (V3x_2E0 u) (V4r2_2E0 u) (V5r1_2E0 u) (V6r_2E0 u) (V7l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4r2_2E0))) (let ((_let_3 (_let_1 V5r1_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 _let_3))) (let ((_let_5 (_let_1 V7l_2E0))) (let ((_let_6 (c_2Esorting_2EPERM_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 (_let_4 _let_2))))))) (let ((_let_9 (c_2Elist_2ECONS_2E2 ((s A_27a) V3x_2E0)))) (let ((_let_10 (c_2Esorting_2EPERM_2E2 (_let_1 (_let_9 _let_5))))) (let ((_let_11 (_let_1 V6r_2E0))) (let ((_let_12 (_let_1 V0zs_2E0))) (let ((_let_13 (_let_1 V1ys_2E0))) (let ((_let_14 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_13) _let_12)))) (let ((_let_15 (_let_1 V2xs_2E0))) (let ((_let_16 (c_2Elist_2EAPPEND_2E2 _let_15))) (let ((_let_17 (c_2Esorting_2EPERM_2E2 (_let_1 (_let_16 _let_5))))) (let ((_let_18 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_19 (_let_18 c_2Elist_2ENIL_2E0))) (let ((_let_20 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_21 (_let_1 (_let_16 _let_20)))) (let ((_let_22 (c_2Esorting_2EPERM_2E2 _let_15))) (let ((_let_23 (c_2Elist_2EAPPEND_2E2 _let_20))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_23 _let_5))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_11)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_17 (_let_1 (_let_4 (_let_1 (_let_16 _let_2))))))) _let_8) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_22 (_let_1 (_let_23 _let_21))))) mono_2Ec_2Ebool_2ET) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_22 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_21) _let_20))))) mono_2Ec_2Ebool_2ET) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_19) (_let_18 ((c_2Elist_2EAPPEND_2E2 _let_19) _let_19))))) mono_2Ec_2Ebool_2ET) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_17 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_16 _let_3))) _let_2))))) _let_8) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_9 _let_13))) _let_12))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_9 _let_14))) _let_11)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_16 _let_13))) _let_12))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_16 _let_14))) _let_11)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_1 (_let_4 (_let_1 (_let_9 _let_2))))))) _let_8) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_9 _let_3))) _let_2))))) _let_8)))))))))))))))))))))))))) (= (_let_270 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool)) (_let_270 c_2Elist_2EEL_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0r1_2E0 u) (V1r2_2E0 u) (V2rows1_2E0 u) (V3rows2_2E0 u) (V4rows3_2E0 u) (V5v_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V4rows3_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 V0r1_2E0))) (let ((_let_7 (c_2Elist_2EAPPEND_2E2 (_let_3 ((c_2Elist_2EAPPEND_2E2 (_let_3 V2rows1_2E0)) (_let_3 ((c_2Elist_2ECONS_2E2 _let_6) (_let_3 V3rows2_2E0)))))))) (let ((_let_8 ((s A_27a) V5v_2E0))) (let ((_let_9 (c_2EpatternMatches_2EPMATCH_2E2 _let_8))) (let ((_let_10 (s A_27b))) (let ((_let_11 (_let_5 V1r2_2E0))) (let ((_let_12 (s _let_1))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (=> (=> (j_mono_2Etyop_2Emin_2Ebool (_let_13 (c_2Eoption_2EIS__SOME_2E1 (_let_12 ((app_2E2 _let_11) _let_8))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (c_2Eoption_2EIS__SOME_2E1 (_let_12 ((app_2E2 _let_6) _let_8)))))) (= (_let_10 (_let_9 (_let_3 (_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_11) _let_4)))))) (_let_10 (_let_9 (_let_3 (_let_7 _let_4)))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (c_2Epred__set_2EINTER_2E2 (_let_1 V0s_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2Eschroeder__close_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epred__set_2Eschroeder__close_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V4tx_2E0 u) (V5hx_2E0 u)) (let ((_let_1 ((s A_27b) V4tx_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_9 (_let_2 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10)) F1_2E0)) _let_5))) _let_4))) _let_1))) ((s A_27a) V5hx_2E0))) (_let_7 ((c_2Ellist_2ELNTH_2E2 _let_5) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun A_27a) _let_6)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 ((s _let_1) V3v_2E0))) (let ((_let_12 (s _let_6))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_14 (_let_8 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_5))) _let_4))) _let_11)) (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_5))) _let_4)))))))))))))))))))) (forall ((V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 ((s _let_3) ((app_2E2 _let_5) _let_1)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_9 (s _let_8))) (let ((_let_10 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_5) _let_1)))) (let ((_let_11 (s tyop_2Enum_2Enum))) (let ((_let_12 (_let_7 _let_8))) (let ((_let_13 ((tyop_2Emin_2Efun _let_4) _let_12))) (and (= (_let_9 ((c_2Ellist_2ELNTH_2E2 (_let_11 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_10)) (_let_9 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) (_let_9 c_2Eoption_2ENONE_2E0)) ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_13)) F0_2E0)) (_let_11 (i_mono_2Etyop_2Enum_2Enum V1n))))) _let_5))))) (= (_let_9 ((c_2Ellist_2ELNTH_2E2 (_let_11 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_10)) (_let_9 ((c_2Eoption_2EOPTION__MAP_2E2 ((s (_let_7 A_27a)) c_2Epair_2ESND_2E0)) _let_6))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V0x_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool)))) (= (_let_5 ((c_2Epred__set_2EFUNSET_2E2 _let_4) _let_2)) (_let_5 ((c_2Epred__set_2EDFUNSET_2E2 _let_4) ((s (_let_3 _let_1)) (c_2Ecombin_2EK_2E1 _let_2))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) (_let_3 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V1s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_1))))))))) (forall ((V3t_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 V3t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V1s_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_1)))))))))))) (forall ((A_27a d)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_2 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Epred__set_2ECROSS_2E3 _let_4) _let_1) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_2))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EPREIMAGE_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EPREIMAGE_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EIMAGE_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epred__set_2EIMAGE_2E0)) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u) (V2f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EFUNSET_2E2 _let_7) _let_1)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_5) _let_2))) _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 (_let_6 _let_1)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDL_2E0)) _let_8))) _let_5))) _let_3)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 _let_2) _let_1))) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) mono_2Ec_2Ebool_2ET) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V5t_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27c) V4h_2E0)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))) (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7h_2E0 u) (V8t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V8t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27c) V7h_2E0)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6n))))) (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n))))) _let_2)))))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V2n))))) _let_2)) _let_2)))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n))))) _let_2)) _let_2)))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 V0l_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s2_2E0))) (let ((_let_4 (_let_2 V0s1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_1))) (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_1)))))))))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1x) V0s) ((mono_2Ec_2Earithmetic_2E_3C_3D V1x) (mono_2Ec_2Epred__set_2EMAX__SET V0s)))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 V0s_2E0)) _let_2)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (forall ((V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V2s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V1f_2E0)) _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s _let_2) (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_2)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0)))))))))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1n) V0s)) (exists ((V2n mono_2Etyop_2Enum_2Enum)) (and (forall ((V3m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V3m) V0s) ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) V3m))) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2n) V0s))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_1) _let_1))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Eupper__bounds_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Eupper__bounds_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2ECROSS_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2ECROSS_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V0n) (mono_2Ec_2EASCIInumbers_2Enum__to__dec__string V1m)) (= V0n V1m))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2EPROD__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2EPROD__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_4))) (= (= _let_4 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_3)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EGSPEC_2E2 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) V0f_2E0)) ((s A_27a) V1v_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 ((c_2Epair_2E_2C_2E2 ((s A_27a) V1v_2E0)) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0f_2E0)) ((s A_27b) V2x_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V1v_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Efcp_2EFCP__EXISTS_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEXISTS_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 (c_2Epred__set_2EREST_2E1 _let_2)) (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_2)))))))) (forall ((A_27a d)) (and (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 V1s_2E0)) _let_2)) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) (_let_1 V0s_2E0))) _let_2)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V3P_2E0 u) (V0f_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V3P_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_6) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))))) (=> (forall ((V3P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V3P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F1_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0f_2E0 u)) (= (forall ((V3P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3P_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 A_27b))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_8) _let_10))) (= (_let_3 ((c_2Epred__set_2EIMAGE_2E2 _let_9) ((s (_let_7 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_6 _let_11)) F0_2E0)) _let_4))) _let_9)))))) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4))))))))))))))))) (forall ((V1y_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V2x_2E0))) (_let_1 V1y_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V2x_2E0))) (= (= _let_5 _let_2) (= (_let_4 (_let_3 _let_5)) (_let_4 (_let_3 _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Epred__set_2EREL__RESTRICT_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EREL__RESTRICT_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27c) A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EindexedLists_2EMAPi_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EindexedLists_2EMAPi_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Epred__set_2EEMPTY_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 (_let_2 (_let_2 _let_1))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V2n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EASCIInumbers_2En2s V0b) V1f) V2n) (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V1f) ((mono_2Ec_2Enumposrep_2En2l V0b) V2n))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2ESURJ_2E3 _let_4) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_3) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 _let_4) _let_3) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1Q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (=> (and (forall ((V3y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V3y) V0P) ((mono_2Ec_2Earithmetic_2E_3C_3D V2x) V3y))) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2x) V0P)) (V1Q V2x))) (not (= V0P mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum))) (V1Q (mono_2Ec_2Epred__set_2EMIN__SET V0P)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V3y_2E0 u) (V0f_2E0 u) (V4x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 ((s A_27a) V4x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 A_27b))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_9 V3y_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_7) _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun A_27b) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_3 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_12)) F0_2E0)) _let_4))) _let_10))) _let_8))) _let_5))) (and (= _let_10 (_let_9 ((app_2E2 _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_4)))))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (_let_2 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 _let_5) _let_3) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EFUNSET_2E2 _let_3) _let_1))))) (forall ((V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s A_27b) V3y_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_7 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebool_2E_3F_21_2E1 (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) (_let_5 V1s_2E0)))) _let_3))) ((s _let_2) V0f_2E0)))))))))))))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_1)))) (exists ((V2y_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_3 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_2 V1ll_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_2 V2y_2E0))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0g_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V1f_2E0)) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V0g_2E0)) _let_1)))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_3 V1f_2E0)) _let_2)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_3 V0g_2E0)) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1c Bool) (V2rows_2E0 u) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V2rows_2E0))) (let ((_let_3 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos)))) (let ((_let_4 ((s A_27a) V0v_2E0))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH_2E2 _let_4))) (let ((_let_6 (s A_27b))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_4) _let_2) (_let_7 (i_mono_2Etyop_2Emin_2Ebool V1c))) _let_3))) (= (_let_6 (_let_5 _let_2)) (_let_6 (_let_5 (_let_1 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_3) _let_2)))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_2)))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V2f_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_2) ((s A_27a) V0x_2E0)))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))) (= (_let_1 V0s_2E0) (_let_1 c_2Epred__set_2EUNIV_2E0))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27d))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27d) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0)))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V2f_2E0)))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (_let_3 (_let_2 V0s_2E0)))) (_let_4 (_let_3 (_let_2 V1t_2E0)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b)))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EerrorStateMonad_2EmapM_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EerrorStateMonad_2EmapM_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_3)) (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EPREIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EPREIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 tyop_2Estring_2Echar))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1)))))))))) (= (_let_269 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Esorting_2EPERM_2Emono_2Etyop_2Enum_2Enum)) (_let_269 c_2Esorting_2EPERM_2E0)) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s2_2E0))) (let ((_let_4 (_let_2 V1s1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V2f_2E0)))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (=> (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_5 (s A_27b))) (= (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 (_let_7 (_let_6 _let_4))) (_let_7 (_let_6 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u)) (= (forall ((V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (_let_1 V0l_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))) (= (_let_1 ((c_2Elist_2EFILTER_2E2 (_let_4 (c_2Emin_2E_3D_2E1 _let_2))) _let_3)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))) (forall ((A_27a d) (V0x_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit0 A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (=> (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((V0 (-> (-> Bool Bool) Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EPREIMAGE_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1v_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) V0f_2E0)))))) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 ((c_2Epair_2E_2C_2E2 ((s A_27a) V1v_2E0)) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0f_2E0)) ((s A_27b) V2x_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_268 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum)) (_let_268 c_2Ebool_2EIN_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2c_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EFUNSET_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V0a_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1b_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_6) _let_2)))) (_let_5 ((c_2Epred__set_2EINTER_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d)) (let ((_let_1 (s A_27a))) (= (_let_1 c_2EpatternMatches_2EPMATCH__INCOMPLETE_2E0) (_let_1 c_2Ebool_2EARB_2E0)))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u) (V2n1 mono_2Etyop_2Enum_2Enum) (V3n2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n1))) _let_2)))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_7) _let_2))))) ((mono_2Ec_2Eprim__rec_2E_3C V2n1) _let_4) (= _let_6 (_let_5 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n2))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_7) _let_6))) ((mono_2Ec_2Eprim__rec_2E_3C V3n2) _let_4)) (= V2n1 V3n2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 ((c_2Epred__set_2EDELETE_2E2 (_let_2 V1s_2E0)) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (= (_let_3 (c_2Epred__set_2EIMAGE_2E1 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0))) (_let_3 c_2Ecombin_2EI_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1P_2E0 u) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_4 (c_2Erich__list_2EPREFIX_2E2 _let_3))) (let ((_let_5 ((s A_27b) V2x_2E0))) (let ((_let_6 (c_2Elist_2ECONS_2E2 _let_5))) (= (_let_1 (_let_4 (_let_1 (_let_6 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) _let_5))) (_let_1 (_let_6 (_let_1 (_let_4 _let_2))))) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2Erich__list_2EPREFIX_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1s_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_5 (s (_let_1 _let_4)))) (let ((_let_6 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c))))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_4)) (c_2EerrorStateMonad_2EMMAP_2E1 _let_2))) ((s (_let_1 _let_6)) c_2EerrorStateMonad_2EUNIT_2E0))) (_let_5 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (or (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2Ecountable_2E1 _let_2)))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0f_2E0))) (let ((_let_4 (tyop_2Elist_2Elist _let_2))) (let ((_let_5 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b))))) (let ((_let_7 (s (_let_5 _let_6)))) (= (_let_7 (c_2EerrorStateMonad_2EmapM_2E1 _let_3)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EerrorStateMonad_2Esequence_2E0)) ((s (_let_5 _let_4)) (c_2Elist_2EMAP_2E1 _let_3))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d)) (and (forall ((V2a_2E0 u) (V3a_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3a_27_2E0))) (let ((_let_3 (_let_1 V2a_2E0))) (let ((_let_4 (s (tyop_2Efcp_2Ebit0 A_27a)))) (= (= (_let_4 (c_2Efcp_2EBIT0B_2E1 _let_3)) (_let_4 (c_2Efcp_2EBIT0B_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((V0a_2E0 u) (V1a_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a_27_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (s (tyop_2Efcp_2Ebit0 A_27a)))) (= (= (_let_4 (c_2Efcp_2EBIT0A_2E1 _let_3)) (_let_4 (c_2Efcp_2EBIT0A_2E1 _let_2))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0l_2E0))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2))))) (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0s_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1t_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_2 V2t_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_6) _let_3)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_6)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_3))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EBIGUNION_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Epred__set_2EBIGUNION_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) (_let_1 V1t_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0))))))) (and (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_178) mono_2Ec_2Enum_2E0) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_181) _let_19) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_218) _let_219) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_216) _let_217) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_191) _let_35) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_220)))) _let_203) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_180)))) _let_206) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_209) _let_210) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_202) _let_203) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_205) _let_206) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_207) _let_208) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_200) _let_201) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_195) _let_197) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_180)))) _let_208) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_220)))) _let_201) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_177)))) _let_210) (= (mono_2Ec_2EASCIInumbers_2EUNHEX (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_177)))) _let_197) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_211) _let_212) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_213) _let_214) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_186) _let_188) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_184) _let_185) (= (mono_2Ec_2EASCIInumbers_2EUNHEX _let_221) _let_152)) (forall ((A_27a d) (V0h1_2E0 u) (V1t1_2E0 u) (V2h2_2E0 u) (V3t2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V3t2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2h2_2E0))) (let ((_let_5 (_let_1 V1t1_2E0))) (let ((_let_6 (_let_3 V0h1_2E0))) (= (and (= _let_5 _let_2) (= _let_6 _let_4)) (= (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_6) _let_5)) (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s0_2E0 u) (V2s_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s0_2E0))) (let ((_let_4 ((s (_let_1 A_27b)) V3f_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 V2s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_7) (_let_5 V0t_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 _let_4) _let_3) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)))) (forall ((V1h1_2E0 u) (V2h2_2E0 u) (V3t1_2E0 u) (V4t2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V4t2_2E0))) (let ((_let_3 ((s A_27b) V2h2_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V3t1_2E0))) (let ((_let_6 ((s A_27a) V1h1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) V0R_2E0))) (let ((_let_9 (c_2Elist_2ELIST__REL_2E3 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_6))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_4 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27f d) (A_27g d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27f) A_27g)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun A_27f) ((tyop_2Emin_2Efun A_27g) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (_let_1 _let_5)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0x_2E0 u) (V1l2_2E0 u) (V2l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 ((s A_27a) V0x_2E0)))))) (let ((_let_3 (_let_1 (_let_2 (_let_1 V1l2_2E0))))) (let ((_let_4 (_let_1 (_let_2 (_let_1 V2l1_2E0))))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= _let_4 _let_3)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_8))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Epred__set_2EREL__RESTRICT_2E4 _let_10) _let_7) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_6 ((app_2E2 (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Epred__set_2EREL__RESTRICT_2E0)) _let_10))) _let_7))) _let_3))) _let_2))))))))))))))))) (forall ((A_27a d)) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) mono_2Ec_2Enum_2E0) (forall ((V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))) (let ((_let_5 ((s A_27a) V1x_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_2))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2)))) _let_4) (mono_2Ec_2Enum_2ESUC _let_4))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) ((s A_27a) V0x_2E0)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (= (_let_1 c_2Epred__set_2EUNIV_2E0) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 V0s1_2E0))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_5))) (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2EDELETE_2E3 _let_7) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EDELETE_2E0)) _let_7))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0set_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0set_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 _let_5))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_3))) _let_4)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))))))))))))) (forall ((V0set_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0set_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Epred__set_2EPOW_2E1 _let_2)) (_let_5 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s (_let_1 A_27b)) V1f_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_2) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x) (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE (F0 V1a)) V0b) V2x))))))) (forall ((A_27a d) (V0P_2E0 u) (V1a_2E0 u) (V2s_2E0 u)) (= (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V2s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1a_2E0))))) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 ((c_2Epred__set_2EINSERT_2E2 (_let_1 V1a_2E0)) (_let_3 V2s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2EFST_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2EFST_2E0)) _let_3)))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (_let_1 V0p_2E0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s2_2E0))) (let ((_let_3 (_let_1 V0s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (c_2Ebool_2EIN_2E2 _let_6))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_4)))))))))))))))) (=> (forall ((V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_7 _let_13)) F0_2E0)) _let_5))) _let_4))) _let_6)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_4))))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (= (_let_3 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_4)) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_5))) _let_4))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0G_2E0 u) (V2x_27_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2x_27_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Elist_2Elist A_27a))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 ((s _let_9) V0G_2E0))) (let ((_let_11 (_let_5 V3y_2E0))) (let ((_let_12 (_let_1 _let_2))) (let ((_let_13 ((tyop_2Emin_2Efun _let_9) _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_3 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_13)) F0_2E0)) _let_4))) _let_10))) _let_6))) _let_11))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_11) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 ((s _let_8) ((app_2E2 _let_10) _let_6))))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) _let_4)))))))))))))))))))) (forall ((V0G_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0G_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V1x_2E0))) (let ((_let_7 (_let_1 _let_5))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 (c_2EdirGraph_2EREACH_2E1 (_let_3 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_4) _let_6)))) (_let_9 (c_2Erelation_2ERTC_2E1 (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) _let_6))) _let_4))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_3 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (c_2Epred__set_2EIMAGE_2E1 ((s (_let_1 A_27a)) V0f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_3 V1s_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2Eschroeder__close_2E3 ((s (_let_1 A_27a)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s A_27a) V2x_2E0))))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_4))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0s_2E0 u)) (= (exists ((V1f_2E0 u) (V2b mono_2Etyop_2Enum_2Enum)) (forall ((V3e_2E0 u)) (= (exists ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (and ((mono_2Ec_2Eprim__rec_2E_3C V4n) V2b) (= (_let_1 V3e_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2Einv_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2Einv_2E0)) _let_4)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (=> (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epair_2ESND_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0f_2E0)) ((s A_27a) V1x_2E0))))))))) (= (_let_1 (c_2Epred__set_2EGSPEC_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) V0f_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (s A_27b))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u) (V3t_2E0 u) (V4u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V4u_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((s (_let_5 A_27c)) V1g_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_5 tyop_2Emin_2Ebool)) V3t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2ESURJ_2E3 _let_6) _let_8) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2ESURJ_2E3 _let_4) _let_3) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2ESURJ_2E3 ((s (_let_2 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_4))) _let_3) _let_1))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2l3_2E0 u) (V3l4_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l3_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_2 V3l4_2E0)))) (let ((_let_5 (c_2Elist_2EAPPEND_2E2 (_let_2 V1l2_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_2 V0l1_2E0))) (=> (= (_let_6 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_3))))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_7)))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 (_let_4 _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (forall ((V3e_2E0 u)) (let ((_let_1 ((s A_27a) V3e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V2f_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EINJ_2E3 _let_3) (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_1))) (_let_4 ((c_2Epred__set_2EDELETE_2E2 (_let_4 V1t_2E0)) ((s A_27b) ((app_2E2 _let_3) _let_1))))))))))))))))))) (forall ((A_27a d)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Elist_2EFOLDR_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EPREIMAGE_2E2 _let_4) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_4) _let_2))) _let_1)))))))))) (forall ((A_27a d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1A_2E0))) (let ((_let_3 (_let_1 V0B_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) _let_3)))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (= _let_5 _let_2)) (= (= _let_5 _let_3) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))))))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_5 (_let_4 (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_6) _let_3))))) (_let_5 ((c_2Epred__set_2EINTER_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Epair__to__num ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) V1n)) ((mono_2Ec_2Enumpair_2Enpair V0m) V1n))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1pat_2E0 u) (V2inp_2E0 u) (V3guard_2E0 u)) (let ((_let_1 ((s A_27a) V0v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1pat_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V2inp_2E0))) (let ((_let_6 ((s (_let_2 tyop_2Emin_2Ebool)) V3guard_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_3) _let_6) _let_5) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) _let_1))) (= _let_5 (_let_4 ((app_2E2 _let_3) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1r_2E0 u)) (= (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27b) V2x_2E0)) ((s A_27a) V0y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0y_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erange_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) _let_3)) (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eset__relation_2ERRUNIV_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eset__relation_2ERRUNIV_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool)) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) (_let_1 V0s_2E0))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (and (forall ((V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1t_2E0)))) (forall ((V2h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_2 V1t_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3l_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V1t_2E0)) (_let_1 V0s_2E0)))) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V2f_2E0)) (_let_2 V0s_2E0)) (_let_2 V1t_2E0)))))))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) (_let_2 V0s_2E0)) (_let_2 V1t_2E0)))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (c_2Ecardinal_2EHAS__SIZE_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0m))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2EEXP V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 ((s (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (forall ((V3x_2E0 u)) (=> V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))) (=> V0P (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3y_2E0))) (let ((_let_5 (_let_3 V2x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_7 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) (_let_7 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_8) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_5) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u)) (=> (forall ((V2s_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) V1P_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 A_27b))) (=> (=> (and (not (= _let_6 (_let_5 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Epred__set_2EFINITE_2E1 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 (_let_5 (c_2Epred__set_2EREST_2E1 _let_6))))) (_let_1 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_3 _let_12)) V0f_2E0)) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_6))))) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_6))) _let_2))))))))))))))))) (forall ((V4v_2E0 u) (V5v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V1P_2E0)) ((s _let_1) V4v_2E0)))) ((s A_27b) V5v1_2E0))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))) (exists ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 (c_2Ellist_2EtoList_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V1l_2E0))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ECOMPL_2E2 _let_1) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epred__set_2EGSPEC_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epred__set_2EGSPEC_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F9_2E0 u) (F6_2E0 u) (F3_2E0 u) (F26_2E0 u) (F23_2E0 u) (F21_2E0 u) (F19_2E0 u) (F1_2E0 u) (F14_2E0 u) (F8_2E0 u) (F7_2E0 u) (F5_2E0 u) (F4_2E0 u) (F25_2E0 u) (F24_2E0 u) (F22_2E0 u) (F20_2E0 u) (F2_2E0 u) (F18_2E0 u) (F17_2E0 u) (F15_2E0 u) (F13_2E0 u) (F0_2E0 u) (F16_2E0 u) (F12_2E0 u) (F11_2E0 u) (F10_2E0 u)) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V15x_2E0 u)) (let ((_let_1 ((s A_27b) V15x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F9_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F6_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F3_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27b) V21x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F26_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V32x_2E0 u)) (let ((_let_1 ((s A_27b) V32x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F23_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V30x_2E0 u)) (let ((_let_1 ((s A_27b) V30x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F21_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V28x_2E0 u)) (let ((_let_1 ((s A_27b) V28x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F19_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V4Q_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V5P_2E0 u) (V0q Bool) (V23x_2E0 u)) (let ((_let_1 ((s A_27b) V23x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F14_2E0)) _let_4))) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V0q))))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))) V0q))))))))) (=> (forall ((V4Q_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27b) V14x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F8_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F5_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27b) V19x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F25_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V17x_2E0 u)) (let ((_let_1 ((s A_27b) V17x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F24_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V31x_2E0 u)) (let ((_let_1 ((s A_27b) V31x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F22_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V29x_2E0 u)) (let ((_let_1 ((s A_27b) V29x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F20_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V27x_2E0 u)) (let ((_let_1 ((s A_27b) V27x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F18_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27b) V26x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F17_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4Q_2E0 u) (V24x_2E0 u)) (let ((_let_1 ((s A_27b) V24x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F15_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V22x_2E0 u)) (let ((_let_1 ((s A_27b) V22x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F13_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V5P_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1p Bool) (V4Q_2E0 u) (V25x_2E0 u)) (let ((_let_1 ((s A_27b) V25x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6)) F16_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_4))) _let_1))) (and V1p (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (=> (forall ((V2iK_2E0 u) (V20xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F12_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V20xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V18xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F11_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V18xxx)))) _let_2))))) (=> (forall ((V2iK_2E0 u) (V16xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2iK_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) F10_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V16xxx)))) _let_2))))) (forall ((V0q Bool) (V1p Bool) (V2iK_2E0 u) (V3i_2E0 u) (V4Q_2E0 u) (V5P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4Q_2E0))) (let ((_let_5 (_let_3 V5P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s (_let_6 _let_7)))) (let ((_let_9 (s _let_7))) (let ((_let_10 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3i_2E0))) (let ((_let_11 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_10))) (let ((_let_14 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_10))) (let ((_let_15 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_16 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_10))) (let ((_let_17 (_let_15 _let_2))) (let ((_let_18 ((s A_27b) V2iK_2E0))) (let ((_let_19 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27b))) (let ((_let_20 (s (_let_1 _let_19)))) (let ((_let_21 (s _let_19))) (let ((_let_22 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_10))) (let ((_let_23 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_10))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 F0_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F1_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_23 (_let_3 ((app_2E2 (_let_9 F5_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_23 (_let_3 ((app_2E2 (_let_9 F4_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_23 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F6_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_22 (_let_3 ((app_2E2 (_let_9 F8_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_22 (_let_3 ((app_2E2 (_let_9 F7_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_22 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F9_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_21 ((app_2E2 (_let_20 F10_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 F24_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_21 ((app_2E2 (_let_20 F11_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 F25_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 (_let_21 ((app_2E2 (_let_20 F12_2E0)) _let_18))) (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F26_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 F13_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_6 _let_17)) F14_2E0)) _let_5))) (_let_12 (i_mono_2Etyop_2Emin_2Ebool V0q)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 F15_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_16 (_let_3 ((app_2E2 (_let_9 ((app_2E2 ((s (_let_15 _let_7)) F16_2E0)) (_let_12 (i_mono_2Etyop_2Emin_2Ebool V1p))))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 F22_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F23_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 F20_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_14 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F21_2E0)) _let_5))) _let_4)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 F18_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 F17_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_13 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F19_2E0)) _let_5))) _let_4)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 F2_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (_let_11 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F3_2E0)) _let_5))) _let_4))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2)))) (and (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EUNIV_2E0)) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (and (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 (((c_2Ecombin_2Eo_2E3 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V3g_2E0)) ((s (_let_3 A_27b)) V0f_2E0)) _let_2)) _let_2)))))) (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V2t_2E0)))) (= (_let_1 (((c_2Ecombin_2Eo_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s (_let_3 A_27a)) V3g_2E0)) _let_2)) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s (_let_4 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7)))) (=> (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2))) (= _let_3 _let_2)))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0t_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1s_2E0))) (= (or (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (= _let_5 (_let_4 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2ECROSS_2E2 _let_5) _let_3)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (exists ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s _let_1) (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (forall ((V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) F1_2E0)) ((s _let_2) V0P_2E0)))) ((s A_27a) V1x_2E0)))))))) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_4))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_5))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_6 _let_3)) F1_2E0)) _let_5))) _let_1))))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_2))) (= (_let_6 (c_2Epred__set_2EBIGINTER_2E1 _let_4)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0f_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 V1x_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_8)) F1_2E0)) _let_6))) _let_4))) _let_1))) (= _let_6 (_let_5 ((app_2E2 _let_4) _let_1))))))))))))) (=> (forall ((V1x_2E0 u) (V0f_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((s A_27b) V1x_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_2 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_9 _let_13)) F0_2E0)) _let_5))) _let_4))) _let_1)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F1_2E0)) _let_5))) _let_4))) _let_1))))))))))))))))))) (forall ((V0f_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) F0_2E0)) ((s A_27b) V1x_2E0)))) ((s _let_2) V0f_2E0))))))))))))) (forall ((V3s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V3s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0r_27_2E0 u) (V1r_2E0 u) (V2p_27_2E0 u) (V3p_2E0 u) (V4g_27_2E0 u) (V5g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27d))))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (and (forall ((V6i_2E0 u)) (= (exists ((V8x_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_1 A_27a)) V2p_27_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V4g_27_2E0)) ((s A_27a) V6i_2E0)) ((s A_27c) V8x_27_2E0)))))) (exists ((V7x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_1 A_27a)) V3p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V5g_2E0)) ((s A_27a) V6i_2E0)) ((s A_27b) V7x_2E0)))))))) (forall ((V9x_2E0 u) (V10x_27_2E0 u)) (let ((_let_1 ((s A_27c) V10x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (s A_27d))) (let ((_let_4 ((s A_27b) V9x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s A_27a))) (=> (and (= (_let_7 ((app_2E2 ((s (_let_5 A_27a)) V3p_2E0)) _let_4)) (_let_7 ((app_2E2 ((s (_let_2 A_27a)) V2p_27_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) V5g_2E0)) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V4g_27_2E0)) _let_1)))) (= (_let_3 ((app_2E2 ((s (_let_5 A_27d)) V1r_2E0)) _let_4)) (_let_3 ((app_2E2 ((s (_let_2 A_27d)) V0r_27_2E0)) _let_1))))))))))))) (= (_let_2 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_3 A_27a)) V3p_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) V5g_2E0)) ((s (_let_3 A_27d)) V1r_2E0))) (_let_2 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_1 A_27a)) V2p_27_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V4g_27_2E0)) ((s (_let_1 A_27d)) V0r_27_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1l2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V0l1_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod _let_3) _let_1)))) (let ((_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))) (let ((_let_7 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_7 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_7 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 (c_2Elist_2EUNZIP_2E1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) (c_2Elist_2EZIP_2E1 _let_6)))) _let_6)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_6))) (= (_let_1 (((c_2Epred__set_2EITSET_2E3 _let_8) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Epred__set_2EITSET_2E0)) _let_8))) _let_5))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 ((s A_27a) V3x_27_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V2x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V1g_2E0))) (let ((_let_5 (s A_27d))) (= (_let_5 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_2) _let_4) _let_3) _let_1)) (_let_5 ((app_2E2 _let_4) ((s A_27b) ((app_2E2 _let_3) ((s A_27c) ((app_2E2 _let_2) _let_1))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V2y_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EDELETE_2E3 _let_1) _let_5) _let_3))) (and (not (= _let_3 _let_5)) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Epred__set_2EFUNSET_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s_2E0))) (_let_2 c_2Epred__set_2EUNIV_2E0))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (_let_3 c_2Epred__set_2EUNIV_2E0) (_let_3 ((c_2Epred__set_2EUNION_2E2 (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_4 _let_2)) c_2Esum_2EINL_2E0)) ((s (_let_4 tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_2)) c_2Esum_2EINR_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))))))) (forall ((A_27a d) (F2_2E0 u) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_4) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F2_2E0)) _let_6))) _let_5))) _let_4))))))))))))))) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_7 _let_13)) F0_2E0)) _let_6))) _let_4))) _let_5)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_5) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F2_2E0)) _let_6))) _let_5))) _let_4))))))))))))))))))) (=> (forall ((V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F1_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_7))) (let ((_let_9 (app_2E2 (_let_8 F1_2E0)))) (let ((_let_10 (s _let_5))) (let ((_let_11 (_let_3 V0P_2E0))) (= (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 ((app_2E2 (_let_8 ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_11))) _let_4)))) (_let_3 ((c_2Epred__set_2EUNION_2E2 (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 (_let_9 _let_11))))) (_let_3 (c_2Epred__set_2EGSPEC_2E1 (_let_10 (_let_9 _let_4))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 ((c_2Epred__set_2EDELETE_2E2 (_let_2 V1s_2E0)) _let_1)))) (= (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_1)) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0x_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (not (= _let_4 (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27e))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 ((s (_let_1 A_27b)) V1g_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 A_27c)) V0f_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)))) (= (_let_6 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_3))) _let_2)) (_let_6 ((c_2Epred__set_2EIMAGE_2E2 _let_5) ((s (_let_4 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0xs_2E0 u) (V1x_2E0 u) (V2y_2E0 u) (V3ys_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3ys_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (_let_1 V0xs_2E0))) (let ((_let_6 (c_2Elist_2EAPPEND_2E2 _let_5))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_4) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_5))) (_let_1 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2y_2E0)) _let_2)))))) (_let_1 (_let_6 (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d)) (= (forall ((V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V1x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2EDELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_2)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0f_2E0 u) (V2y_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 ((s A_27a) V3x_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_7 V2y_2E0))) (let ((_let_9 (_let_1 A_27b))) (let ((_let_10 ((s _let_9) V0f_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_9) _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_3 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_12)) F0_2E0)) _let_4))) _let_10))) _let_8))) _let_5))) (and (= (_let_7 ((app_2E2 _let_10) _let_5)) _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_4)))))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s A_27b) V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V1s_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 _let_6))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (_let_1 (((c_2Epred__set_2ELINV__OPT_2E3 _let_5) _let_8) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_9 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_8))))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Emin_2E_40_2E1 (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_8))) _let_5))) _let_2))))))) (_let_1 c_2Eoption_2ENONE_2E0)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (not (= _let_2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))))))) (forall ((A_27a d) (V0s_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)) ((s _let_1) V2s_2E0)))) (forall ((V3e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)) (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V3e_2E0)) (_let_2 V2s_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V0s_2E0)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) _let_263 (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epred__set_2EGSPEC_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epred__set_2EGSPEC_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) (tyop_2Elist_2Elist _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (= (_let_267 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Esorting_2ESORTED_2Emono_2Etyop_2Enum_2Enum)) (_let_267 c_2Esorting_2ESORTED_2E0)) (forall ((A_27a d) (V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 ((s A_27a) V1e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s (_let_2 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_3) (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_1) (_let_5 c_2Epred__set_2EEMPTY_2E0)))))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V8t mono_2Etyop_2Enum_2Enum)) (= (F3 V8t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V5t mono_2Etyop_2Enum_2Enum)) (= (F1 V5t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F2 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL F1) V0b) V4x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) F2) (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a)) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V1a) V9x) (V1a V9x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) F3) V7x) mono_2Ec_2Ebool_2ET)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL F0) V0b) V2x) (V0b V2x)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 _let_1) _let_1))))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Epred__set_2Echooser_2E2 _let_1) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_2 (c_2Epred__set_2ECHOICE_2E1 _let_1)))))) (forall ((V1s_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Epred__set_2Echooser_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n))))) (_let_4 ((c_2Epred__set_2Echooser_2E2 (_let_2 (c_2Epred__set_2EREST_2E1 _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((s _let_3) V2x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_4))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1m) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1m) ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Ecount V0n) (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Ecount (mono_2Ec_2Enum_2ESUC V0n)) ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0n) (mono_2Ec_2Epred__set_2Ecount V0n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0a_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s A_27a) V0a_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_3))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_2))) _let_1)) (_let_4 ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))))) (forall ((V0a_2E0 u) (V1s1_2E0 u) (V2s2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1s1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)))) (let ((_let_8 ((s A_27a) V0a_2E0))) (let ((_let_9 (_let_1 _let_6))) (and (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 (_let_4 c_2Epred__set_2EEMPTY_2E0)) _let_2)) (_let_7 c_2Epred__set_2EEMPTY_2E0)) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_8) _let_5))) _let_2)) (_let_7 ((c_2Epred__set_2EUNION_2E2 (_let_7 ((c_2Epred__set_2EIMAGE_2E2 ((s _let_9) ((app_2E2 ((s (_let_3 _let_9)) F0_2E0)) _let_8))) _let_2))) (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_5) _let_2)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Epair_2Eprod _let_1) _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) (_let_2 ((c_2Epred__set_2Eschroeder__close_2E2 ((s (_let_1 A_27a)) V1f_2E0)) (_let_2 V2s_2E0)))))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) (_let_3 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (c_2Epred__set_2EIMAGE_2E1 ((s (_let_1 A_27a)) V1f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_3 V2s_2E0)))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 ((s (_let_1 _let_2)) V0R_2E0)) _let_3))))) (forall ((V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2t_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 ((s (_let_1 _let_2)) V0R_2E0)) (_let_3 V1s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1p_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 ((s A_27a) V1p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) ((s (_let_1 tyop_2Enum_2Enum)) (c_2Ebag_2EBAG__OF__SET_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) F1_2E0)) ((s _let_2) V0P_2E0)))) ((s A_27a) V1x_2E0)))) (exists ((V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) _let_2)))))))))))) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_4))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_5))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_6 _let_3)) F1_2E0)) _let_5))) _let_1))))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_2))) (= (_let_6 (c_2Epred__set_2EBIGUNION_2E1 _let_4)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_6)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_6))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_2))) (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1Q_2E0))) (let ((_let_3 (c_2Epred__set_2ECROSS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Epred__set_2EINSERT_2E2 ((s A_27b) V2x_2E0)))) (= (_let_4 (_let_3 (_let_1 (_let_5 _let_2)))) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (_let_3 (_let_1 (_let_5 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (= (_let_2 (c_2Epred__set_2ECOMPL_2E1 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_1) _let_3)))) (_let_2 ((c_2Epred__set_2EDELETE_2E2 (_let_2 (c_2Epred__set_2ECOMPL_2E1 _let_3))) _let_1))))))) (forall ((A_27a d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Epred__set_2EUNIV_2E0))))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 ((s A_27a) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Eset__relation_2Ereln__to__rel_2E3 _let_4) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_4))) _let_2))) _let_1)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2Epartition_2E2 _let_5) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Epred__set_2Epartition_2E0)) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1ll_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eevery_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_4))) _let_2))) (= (_let_1 ((c_2Ellist_2ELFILTER_2E2 _let_4) _let_2)) (_let_1 c_2Ellist_2ELNIL_2E0)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s A_27a) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s _let_1))) (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 _let_6) _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) c_2Eind__type_2ECONSTR_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (= (_let_1 (c_2Epred__set_2ECOMPL_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_3))) (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (V0s_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2Eequiv__on_2E2 ((s (_let_1 _let_2)) V1R_2E0)) ((s _let_2) V0s_2E0)))) (forall ((V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 (_let_3 V2t_2E0)) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 ((s (_let_1 _let_2)) V1R_2E0)) (_let_3 V0s_2E0)))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 V2t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_3) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_2) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V1R_2E0)) _let_3))) _let_2)))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2ESING_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2))))))))) (and (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V0m))) (= (((mono_2Ec_2Ebit_2EBIT__MODIFY _let_1) V1f) mono_2Ec_2Enum_2E0) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF _let_1) V1f) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V4n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL V2m))) (= (((mono_2Ec_2Ebit_2EBIT__MODIFY _let_2) V3f) _let_1) ((((((mono_2Ec_2Enumeral__bit_2EBIT__MODF _let_2) V3f) _let_1) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ellist_2Eevery_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ellist_2Eevery_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_134 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (_let_134 c_2Ebool_2ELET_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (exists ((V2R_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V2R_2E0)) (_let_2 V0ll1_2E0)))) (_let_2 V1ll2_2E0)))) (forall ((V3ll3_2E0 u) (V4ll4_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Ellist_2ELNIL_2E0))) (let ((_let_4 (_let_2 V4ll4_2E0))) (let ((_let_5 (_let_2 V3ll3_2E0))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s (_let_7 _let_8)) V2R_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_5))) _let_4))) (or (and (= (_let_12 (c_2Ellist_2ELHD_2E1 _let_5)) (_let_12 (c_2Ellist_2ELHD_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 (_let_2 (c_2Eoption_2ETHE_2E1 (_let_6 (c_2Ellist_2ELTL_2E1 _let_5))))))) (_let_2 (c_2Eoption_2ETHE_2E1 (_let_6 (c_2Ellist_2ELTL_2E1 _let_4)))))))) (and (= _let_5 _let_3) (= _let_4 _let_3))))))))))))))))))))))) (= (_let_1 V0ll1_2E0) (_let_1 V1ll2_2E0))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3c_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V1a_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_1 V2b_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2)))))))))))))) (forall ((V4e_2E0 u) (V5g_2E0 u) (V6l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V6l_2E0))) (let ((_let_3 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V5g_2E0)))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((c_2Elist_2EFOLDR_2E3 ((s (_let_6 (_let_6 A_27a))) V0f_2E0)) (_let_5 V4e_2E0)))) (= (_let_5 (_let_7 (_let_4 (_let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))) (_let_5 (_let_7 (_let_4 (_let_3 _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27b)) V0f_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0x_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_2))) mono_2Ec_2Enum_2E0) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Epred__set_2ECOMPL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2ECOMPL_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun _let_1) A_27a)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2ELIST__APPLY_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2ELIST__APPLY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EPREIMAGE_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 V0s_2E0)) _let_2)))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)) _let_3))))) (forall ((A_27a d) (V0s2_2E0 u) (V1s1_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s2_2E0))) (let ((_let_5 (s (_let_1 _let_2)))) (let ((_let_6 (c_2Epred__set_2EREL__RESTRICT_2E2 (_let_5 V2R_2E0)))) (let ((_let_7 (_let_3 V1s1_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erelation_2ERSUBSET_2E2 (_let_5 (_let_6 _let_7))) (_let_5 (_let_6 _let_4))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) (_let_1 V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))) (forall ((A_27a d) (V0z_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V3w_2E0))))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0z_2E0))) (let ((_let_6 (c_2Epair_2E_2C_2E2 (_let_4 V2x_2E0)))) (let ((_let_7 (s _let_1))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 V1y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 ((c_2Epair_2E_2C_2E2 _let_9) _let_5))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 (_let_6 _let_9))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 (_let_7 (_let_6 _let_5))) _let_3)))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (= (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0s_2E0 u) (V1f_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((s (_let_3 _let_7)) V1f_2E0))) (let ((_let_9 (c_2Epred__set_2EITSET_2E3 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (_let_1 ((_let_9 _let_6) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_10 (c_2Epred__set_2EFINITE_2E1 _let_6))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_10 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)) _let_6))) _let_2) (_let_1 ((_let_9 (_let_5 (c_2Epred__set_2EREST_2E1 _let_6))) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_6))))) _let_2))))))) (_let_1 c_2Ebool_2EARB_2E0))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2Eequiv__on_2E2 ((s (_let_1 _let_2)) V0R_2E0)) ((s _let_2) V1s_2E0)))) (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_9)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))))) (forall ((V5x_2E0 u) (V6y_2E0 u) (V7z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7z_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_7 V1s_2E0))) (let ((_let_11 (_let_1 V6y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 (_let_6 _let_11))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_2) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_11) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_3) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2)))))))))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) (_let_4 V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))))))))))) (forall ((A_27a d)) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ellist_2Elrep__ok_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Ellist_2Ellist A_27a)) _let_1)) V0rep_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epred__set_2Ecountable_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (= (_let_266 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Estring_2Echar)) (_let_266 c_2Elist_2EEL_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Estate__transformer_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) c_2Estate__transformer_2EUNIT_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V2x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0r_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_7) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) _let_3))) _let_7)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (= V0n mono_2Ec_2Enum_2E0) (F0 V0n))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2D V0n))) (let ((_let_3 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) (let ((_let_4 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) (= (mono_2Ec_2EEncode_2Eencode__num V0n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (F0 V0n)) (_let_4 (_let_4 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Earithmetic_2EEVEN V0n)) (_let_3 (mono_2Ec_2EEncode_2Eencode__num ((mono_2Ec_2Earithmetic_2EDIV (_let_2 _let_1)) _let_1)))) (_let_4 (_let_3 (mono_2Ec_2EEncode_2Eencode__num ((mono_2Ec_2Earithmetic_2EDIV (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_1)))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (= (exists ((V1f_2E0 u)) (forall ((V2x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n)))) (_let_1 V2x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V1f_2E0 u) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V2b)))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_5 ((s (_let_3 A_27b)) V0f_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 _let_5) _let_4) _let_2))) (= (_let_1 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_4)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EEncode_2Eencode__bnum V0m) V1n)) V0m)) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2g_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27c) V5y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V2g_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V4x_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) V0f_2E0))) (let ((_let_11 (_let_2 A_27a))) (let ((_let_12 (_let_8 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_3) _let_12))) (= (_let_5 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) F0_2E0)) _let_10))) _let_4))) _let_6))) _let_1)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 _let_10) _let_6))) ((s A_27b) ((app_2E2 _let_4) _let_1))))))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2g_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V3l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (_let_7 (_let_4 A_27a)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (= (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_9) _let_3) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_6) _let_1)))) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_6))) _let_3) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EIMAGE_2E2 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EPREIMAGE_2E2 _let_4) _let_2))))) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2EUNION_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (_let_1 V1t_2E0))) (= (_let_1 (_let_3 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_2)))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))) (forall ((A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27e) X1_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27d))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) A_27e))) (let ((_let_5 ((tyop_2Emin_2Efun A_27e) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 (c_2Epred__set_2ECOMPL_2E1 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ETC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ETC_2E0)) _let_4)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EUNIV_2E0))) (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Epred__set_2EEMPTY_2E0)))) (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (forall ((V2e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 ((s A_27a) V2e_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_4) _let_3)))))))))))))))))) (forall ((V3s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V3s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))))))))))) (= (mono_2Ec_2Epred__set_2Ecount mono_2Ec_2Enum_2E0) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) (forall ((A_27a d) (V0sob_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V0sob_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_4))) (= (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_4)) (_let_2 (((c_2Epred__set_2EITSET_2E3 ((s (_let_3 (_let_3 _let_1))) c_2Ebag_2EBAG__UNION_2E0)) _let_4) (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 V0s_2E0)) (_let_1 c_2Epred__set_2EUNIV_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1t) ((mono_2Ec_2Epred__set_2ESUBSET_2Emono_2Etyop_2Enum_2Enum V0s) V1t)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Epred__set_2ESUM__SET V0s)) (mono_2Ec_2Epred__set_2ESUM__SET V1t)))) (forall ((A_27a d) (V0b_2E0 u)) (= (forall ((V1e_2E0 u)) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)) ((s A_27a) V1e_2E0))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 _let_2) _let_1))) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2Elist_2EMAP_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_4) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_3))) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EMAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EMAP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 _let_3) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0s_2E0)) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (not (= (_let_1 V0s_2E0) (_let_1 c_2Epred__set_2EEMPTY_2E0))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0wo_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0wo_2E0)))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (exists ((V2wo_27_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0wo_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2wo_27_2E0)))))))) (forall ((A_27a d) (V0sp_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1s_2E0))) (=> (and (not (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0))) (forall ((V2t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 V0sp_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2Epred__set_2EBIGINTER_2E1 _let_4))) (_let_2 V0sp_2E0)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Eposet_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Efl_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s A_27a) V1x_2E0))))) (forall ((V2P_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2EChain_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (exists ((V3y_2E0 u)) (and (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0l_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) (_let_1 V3y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Efl_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s A_27a) V3y_2E0))))))))) (exists ((V5y_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Efl_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s A_27a) V5y_2E0)))) (forall ((V6x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6x_2E0))) (let ((_let_3 (_let_1 V5y_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0l_2E0)) ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_3 (c_2EEncode_2Ewf__encoder_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V1e_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (s _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0)) _let_1))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 (_let_4 V1e_2E0)) _let_1))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 (_let_4 V2f_2E0)) _let_1)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V2f_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))))) (= (_let_260 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum)) (_let_260 c_2Epred__set_2ESUM__IMAGE_2E0)) (forall ((V0I (-> mono_2Etyop_2Enum_2Enum Bool)) (V1J (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1J) ((mono_2Ec_2Epred__set_2ESUBSET_2Emono_2Etyop_2Enum_2Enum V0I) V1J) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0I)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Epred__set_2EMAX__SET V0I)) (mono_2Ec_2Epred__set_2EMAX__SET V1J)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Enum__to__pair V0n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enumpair_2Enfst V0n)) (mono_2Ec_2Enumpair_2Ensnd V0n)))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 _let_5) _let_3) ((s _let_6) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Epred__set_2EINJ_2E0)) _let_5))) _let_3))) X2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_4 (_let_1 V1y_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (or (= _let_2 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_2) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EINSERT_2E3 _let_4) _let_3) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ebag_2ESET__OF__BAG_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))) (= _let_3 _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (= (and (= _let_4 _let_2) (= _let_3 _let_2)) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) _let_2))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_3 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (= (_let_1 (((c_2Ecombin_2Eo_2E3 _let_7) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_5))) _let_2))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2EEncode_2Elift__blist_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2EEncode_2Elift__blist_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_3)) _let_2)))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (= (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)) _let_2)))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EUNIV_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2EIMAGE_2E3 _let_6) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_4))) _let_1)))))))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F7 V1a) V4t) (not (V1a V4t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V15t)) ((F5 V0b) V15t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V13t) (not (V1a V13t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V8t)) ((F2 V0b) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V16t) (V1a V16t)) (((F9 V1a) V0b) V16t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (or (V1a V18t) (V0b V18t)) (((F6 V1a) V0b) V18t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (((F8 V1a) V0b) V9t) (=> (V1a V9t) (V0b V9t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V11t) (V0b V11t)) (((F3 V1a) V0b) V11t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN F1) V1a) V5x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a) V5x))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b) V12x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN (F4 V1a)) V0b) V12x)))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V0b) ((F6 V1a) V0b)) V17x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b) V17x))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b) V14x) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN (F5 V0b)) ((F9 V1a) V0b)) V14x))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b) V10x) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V0b) ((F3 V1a) V0b)) V10x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b) V7x) (not (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN (F2 V0b)) ((F8 V1a) V0b)) V7x)))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a) V2x) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN F0) (F7 V1a)) V2x)))))))))))))))) (= (_let_265 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar)) (_let_265 c_2Elist_2ENULL_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EUNIV_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2ELREPEAT_2E1 _let_1))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_1)))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (=> (forall ((V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F0_2E0)) _let_1)) (_let_3 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))))))))) (= (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) F0_2E0))) (_let_2 c_2Epred__set_2EUNIV_2E0)))))) (forall ((A_27a d) (A_27b d) (V0pl_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) V0pl_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_5) _let_4)) (c_2Elist_2EUNZIP_2E1 _let_1)))) (and (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s _let_4) (c_2Epair_2ESND_2E1 _let_6))))) _let_3) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s _let_5) (c_2Epair_2EFST_2E1 _let_6))))) _let_3))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1sos_2E0 u)) (= (exists ((V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1sos_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EBIGUNION_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V1sos_2E0)) ((s A_27a) V0x_2E0)))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 ((c_2Epred__set_2Eschroeder__close_2E2 ((s (_let_1 A_27a)) V0f_2E0)) _let_3))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_2 A_27a)) (c_2Epred__set_2Eenumerate_2E1 _let_1))) ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_1))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p1_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EEncode_2Elift__prod_2E3 _let_4) _let_2) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_4) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EPOW_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Epred__set_2EPOW_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2EPSUBSET_2E2 _let_2) (_let_1 V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27b) V1y_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Epred__set_2ECROSS_2E2 (_let_6 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_6 c_2Epred__set_2EEMPTY_2E0)))) (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_5 c_2Epred__set_2EEMPTY_2E0))))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_4) _let_3))) (_let_2 c_2Epred__set_2EEMPTY_2E0))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1f_2E0 u) (V2x_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_4 ((c_2Epred__set_2EINSERT_2E2 (_let_5 V2x_2E0)) (_let_4 V0s_2E0))))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((s (_let_3 _let_7)) V1f_2E0))) (let ((_let_9 (c_2Epred__set_2EITSET_2E3 _let_8))) (= (_let_1 ((_let_9 _let_6) _let_2)) (_let_1 ((_let_9 (_let_4 (c_2Epred__set_2EREST_2E1 _let_6))) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) (_let_5 (c_2Epred__set_2ECHOICE_2E1 _let_6))))) _let_2))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (_let_2 V1s_2E0))) (let ((_let_5 (c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))))) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_3))))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V1f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_7)) F0_2E0)) _let_2))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 _let_5) ((s (_let_3 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_2)))))))))))) (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_3))) (= (_let_5 (c_2Epred__set_2Eenumerate_2E1 _let_2)) (_let_5 (c_2Emin_2E_40_2E1 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2))))))))))))) (forall ((A_27a d) (V0x Bool) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2))) (not V0x)) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Ecombin_2EK_2E1 (_let_3 (i_mono_2Etyop_2Emin_2Ebool V0x))))) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (exists ((V2s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1sos_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1sos_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0lf_2E0 u) (V1nd_2E0 u) (V2a_2E0 u)) (let ((_let_1 ((s A_27a) V2a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0lf_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 _let_2) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b))) V1nd_2E0)) ((s (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d)) (c_2Einftree_2EiLf_2E1 _let_1))) ((s A_27b) ((app_2E2 _let_2) _let_1)))))))) (forall ((V3lf_2E0 u) (V4nd_2E0 u) (V5b_2E0 u) (V6df_2E0 u) (V7g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s A_27c) V5b_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) V4nd_2E0))) (let ((_let_6 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (=> (forall ((V8d_2E0 u)) (let ((_let_1 ((s A_27d) V8d_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3lf_2E0)) ((s ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun _let_3) A_27b))) V4nd_2E0)) ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V6df_2E0)) _let_1))) ((s A_27b) ((app_2E2 ((s _let_3) V7g_2E0)) _let_1)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Einftree_2Erelrec_2E4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3lf_2E0)) _let_5) ((s _let_6) ((c_2Einftree_2EiNd_2E2 _let_3) ((s (_let_1 _let_6)) V6df_2E0)))) ((s A_27b) ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) ((s _let_2) V7g_2E0)))))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_3 A_27a))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (= (_let_1 (((c_2Ecombin_2Eo_2E3 _let_7) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_5))) _let_2))))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELDROP_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELDROP_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V0ls_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 ((s _let_1) (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_4 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_3)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Eenc2dec_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (and (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((mono_2Ec_2Enumposrep_2EBOOLIFY mono_2Ec_2Enum_2E0) V0m) V1a) V1a)) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum) (V4a mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (((mono_2Ec_2Enumposrep_2EBOOLIFY (mono_2Ec_2Enum_2ESUC V2n)) V3m) V4a) (((mono_2Ec_2Enumposrep_2EBOOLIFY V2n) (mono_2Ec_2Earithmetic_2EDIV2 V3m)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool (mono_2Ec_2Earithmetic_2EODD V3m)) V4a))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))))) (forall ((A_27a d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (V0w_2E0 u) (V1e_2E0 u)) (let ((_let_1 ((s A_27a) V1e_2E0))) (let ((_let_2 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_3 (_let_2 V0w_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_4 (c_2Ewellorder_2EelsOf_2E1 (_let_2 ((c_2Ewellorder_2Eremove_2E2 _let_1) _let_3)))) (_let_4 ((c_2Epred__set_2EDELETE_2E2 (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_3))) _let_1)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 (_let_1 V0x_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1w2_2E0 u) (V2w1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Eoption_2ENONE_2E0))) (let ((_let_4 ((s A_27b) V0x_2E0))) (let ((_let_5 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V2w1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w2_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (s (_let_8 tyop_2Emin_2Ebool)))) (let ((_let_10 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (= (_let_2 (((c_2Ewellorder_2Ewo2wo_2E3 _let_5) _let_7) _let_4)) _let_3) (= (_let_10 (c_2Ewellorder_2EelsOf_2E1 _let_7)) (_let_10 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_8 A_27a)) c_2Eoption_2ETHE_2E0)) (_let_9 ((c_2Epred__set_2EDELETE_2E2 (_let_9 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_6 _let_1)) ((c_2Ewellorder_2Ewo2wo_2E2 _let_5) _let_7))) ((s (_let_6 tyop_2Emin_2Ebool)) ((c_2Ewellorder_2Eiseg_2E2 _let_5) _let_4))))) _let_3))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Epred__set_2EDIFF_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epred__set_2EDIFF_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2s_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V0y_2E0))) (let ((_let_6 ((s (_let_1 A_27b)) V3f_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_7 (((c_2Epred__set_2ELINV__OPT_2E3 _let_6) _let_2) _let_5)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_3))) (and (= (_let_4 ((app_2E2 _let_6) _let_3)) _let_5) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2ENULL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Elist_2ENULL_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 (((c_2EEncode_2Eencode__prod_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EEncode_2Eencode__prod_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (_let_1 V2t_2E0))) (let ((_let_5 (c_2Epred__set_2EDISJOINT_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (not (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1b_2E0))) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_5 (c_2Epred__set_2EIMAGE_2E2 _let_4))) (let ((_let_6 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_7 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 _let_3))))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_4) _let_8))))) (=> (and (not ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum _let_9) _let_7)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum _let_7)) (= (mono_2Ec_2Epred__set_2EPROD__SET (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_8) _let_3)))))) ((mono_2Ec_2Earithmetic_2E_2A _let_9) (mono_2Ec_2Epred__set_2EPROD__SET _let_7)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 ((tyop_2Epair_2Eprod _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_3 _let_9))) (let ((_let_12 (_let_5 _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_12)) F0_2E0)) _let_7))) _let_2))) _let_1)) (_let_10 ((c_2Epair_2E_2C_2E2 ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1)))))))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (tyop_2Emin_2Efun _let_5))) (let ((_let_7 (s (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_9 (_let_2 (_let_1 _let_8)))) (= (_let_7 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_6 _let_8)) (c_2Epair_2EUNCURRY_2E1 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F0_2E0)) _let_4)))))) (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_4))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u) (V3t_2E0 u) (V4u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V4u_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((s (_let_5 A_27c)) V1g_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_5 tyop_2Emin_2Ebool)) V3t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_3) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EINJ_2E3 _let_6) _let_8) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EINJ_2E3 ((s (_let_2 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_4))) _let_3) _let_1))))))))))))) (forall ((V0A (-> mono_2Etyop_2Enum_2Enum Bool)) (V1B (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (not (= V0A mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (not (= V1B mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1B) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0A)) (= (mono_2Ec_2Epred__set_2EMIN__SET ((mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum V0A) V1B)) ((mono_2Ec_2Earithmetic_2EMIN (mono_2Ec_2Epred__set_2EMIN__SET V0A)) (mono_2Ec_2Epred__set_2EMIN__SET V1B))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_56 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum)) (_let_56 c_2Epred__set_2EFINITE_2E0)) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_4 c_2Epred__set_2EEMPTY_2E0)))))) (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (and (forall ((V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (= (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_2))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) F1_2E0)) _let_2))) ((s A_27b) V2y_2E0)))) ((s A_27c) V3z_2E0))) _let_2)))))) (=> (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) A_27a))) (let ((_let_5 (s _let_4))) (= (_let_5 ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_1)) (_let_5 (c_2Epair_2EUNCURRY_2E1 ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) F1_2E0)) _let_1))))))))))) (forall ((V0funs_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 ((s (tyop_2Elist_2Elist _let_2)) V0funs_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_2) A_27a)))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_5 ((c_2Elist_2EMAP_2E2 (_let_4 (c_2Epair_2EUNCURRY_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) A_27a))) F0_2E0)))) _let_3)) (_let_5 ((c_2Elist_2EMAP_2E2 (_let_4 c_2Epair_2EFST_2E0)) _let_3)))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool) Bool Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d)) (and (forall ((V0xb_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s _let_1) ((c_2EEncode_2Eencode__list_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0xb_2E0)) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)))) (forall ((V1xb_2E0 u) (V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1xb_2E0))) (let ((_let_5 (c_2EEncode_2Eencode__list_2E2 _let_4))) (let ((_let_6 (s _let_3))) (let ((_let_7 ((s A_27a) V2x_2E0))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 (_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_2))))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 ((app_2E2 _let_4) _let_7)))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_6 (_let_5 _let_2)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EBIGINTER_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Epred__set_2EBIGINTER_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1s_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3s_2E0 u) (V0f_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0f_2E0))) (let ((_let_8 (s _let_4))) (let ((_let_9 (s _let_3))) (let ((_let_10 (_let_9 V3s_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_5))) (= (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_11)) F1_2E0)) _let_10))) _let_7))) _let_2))) _let_1)) (_let_9 ((c_2Epred__set_2EUNION_2E2 _let_10) (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))))) (=> (forall ((V0f_2E0 u) (V3s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 ((s _let_1) V3s_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_8 _let_9))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_6 _let_11)) F0_2E0)) _let_4))) _let_5)) (_let_10 (c_2Epair_2EUNCURRY_2E1 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_8 _let_7)) F1_2E0)) _let_5))) _let_4))))))))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V1ls_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_4)))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_3 _let_4))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (s _let_4))) (let ((_let_10 (_let_9 V2s_2E0))) (let ((_let_11 (_let_8 _let_7))) (= (_let_9 (((c_2Elist_2EFOLDL_2E3 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_11)) F0_2E0)) _let_6))) _let_10) _let_2)) (_let_9 ((c_2Epred__set_2EUNION_2E2 _let_10) (_let_9 (c_2Epred__set_2EBIGUNION_2E1 ((s (_let_8 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s _let_7) (c_2Epair_2EUNCURRY_2E1 _let_6))) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (= (_let_1 V0s_2E0) (_let_1 c_2Epred__set_2EUNIV_2E0)) (forall ((V1v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1v_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (and (forall ((V0h mono_2Etyop_2Estring_2Echar) (V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0h) V1t)) (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V1t)))) _let_264) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u) (V1L_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_4) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 _let_4) _let_2)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EPREIMAGE_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epred__set_2EPREIMAGE_2E0)) _let_3)))))))))) (forall ((V0 Bool) (V1 (-> mono_2Etyop_2Enum_2Enum Bool)) (V2 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epair_2E_2C_2E2 _let_6) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2Epair_2E_2C_2E0)) _let_6))) _let_5))))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epred__set_2EGSPEC_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epred__set_2EGSPEC_2E0)) _let_2)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1e_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))))) (exists ((V2pfx_2E0 u) (V3sfx_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3sfx_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (and (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 V2pfx_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) (_let_1 c_2Elist_2ENIL_2E0)))))) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (and (forall ((V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_2))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V1R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2Eequiv__on_2E2 _let_5) _let_4))) (= (_let_3 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 _let_5) _let_4)))) _let_4)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2EfixedPoint_2Emonotone_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2EfixedPoint_2Emonotone_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2m_2E0 u) (V3e_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1s_2E0))) (let ((_let_6 ((s (_let_3 tyop_2Enum_2Enum)) V2m_2E0))) (let ((_let_7 (c_2Epred__set_2Eis__measure__maximal_2E3 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V3e_2E0))) (let ((_let_10 (_let_1 V0x_2E0))) (let ((_let_11 (app_2E2 _let_6))) (let ((_let_12 (s tyop_2Enum_2Enum))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_12 (_let_11 _let_9)))) (j_mono_2Etyop_2Enum_2Enum (_let_12 (_let_11 _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_10) _let_5)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_9) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_5) _let_2)))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (= (_let_5 (_let_4 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2)))) (_let_5 (c_2Epred__set_2ECOMPL_2E1 (_let_5 (_let_4 _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Ec_2Enumposrep_2Enum__from__hex__list) mono_2Ec_2Enumposrep_2Enum__to__hex__list) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (c_2Epred__set_2Epairwise_2E2 ((s (_let_1 _let_2)) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V2t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_4)))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Epair_2Eprod _let_2) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_2) _let_1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) (c_2Esum_2EINL_2E1 _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0t_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_2 _let_1)) c_2Esum_2EINL_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0t_2E0)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_6))) _let_3))))))))))) (and (forall ((V1p mono_2Etyop_2Enum_2Enum) (V2h mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (mono_2Ec_2Enumposrep_2El2n ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1p)))) (= (_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V2h) V3t)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Ebit_2EMOD__2EXP V1p) V2h)) ((mono_2Ec_2Ebit_2ETIMES__2EXP V1p) (_let_1 V3t)))))) (forall ((V0p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumposrep_2El2n ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0p)) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGINTER_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (= (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u) (V2s_2E0 u) (V3ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3ll_2E0))) (let ((_let_4 ((s A_27a) V2s_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V0R_2E0)) _let_4))) _let_3))) (forall ((V4s_2E0 u) (V5ll_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V4s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V5ll_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_4 _let_8)) V0R_2E0)) _let_3))) _let_7))) (or (exists ((V6s_27_2E0 u) (V7x_2E0 u) (V8ll_27_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V6s_27_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_9 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_10 (s _let_9))) (let ((_let_11 (_let_10 V5ll_2E0))) (let ((_let_12 (_let_10 V8ll_27_2E0))) (let ((_let_13 (s (tyop_2Eoption_2Eoption _let_9)))) (let ((_let_14 ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_7 _let_14)) V0R_2E0)) _let_3))) _let_12))) (= (_let_13 (c_2Ellist_2ELTL_2E1 _let_11)) (_let_13 (c_2Eoption_2ESOME_2E1 _let_12))) (= (_let_8 (c_2Ellist_2ELHD_2E1 _let_11)) (_let_8 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_6 ((app_2E2 ((s (_let_7 _let_5)) V1f_2E0)) (_let_2 V4s_2E0))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_1))))))))))))))))))))) (and (= _let_7 (_let_6 c_2Ellist_2ELNIL_2E0)) (= (_let_2 ((app_2E2 ((s (_let_4 _let_1)) V1f_2E0)) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0))))))))))))))) (= (_let_2 ((c_2Ellist_2ELUNFOLD_2E2 ((s (_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) V1f_2E0)) _let_4)) _let_3))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2e_2E0 u) (V3acc mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_6 (_let_2 _let_5))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1))) V3acc) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_4) _let_1)))) V3acc))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (_let_2 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Epred__set_2EPROD__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (((c_2Epred__set_2EITSET_2E3 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2EfixedPoint_2Emonotone_2E1 _let_2))) (and (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EfixedPoint_2Eclosed_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2EfixedPoint_2Elfp_2E1 _let_4))) _let_3)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EfixedPoint_2Eclosed_2E2 _let_2) ((s _let_1) (c_2EfixedPoint_2Elfp_2E1 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_4 _let_1))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EINJ_2E3 _let_8) _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Epred__set_2EINJ_2E0)) _let_8))) _let_6))) _let_3)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1s_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_6) _let_2)))) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (_let_1 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_1 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3))) _let_4)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s A_27b) ((app_2E2 _let_6) _let_4))) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_3)))))))))))))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2Epred__set_2EMAX__SET V0s))) (let ((_let_2 (= V0s mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s) (and (=> (not _let_2) (and ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum _let_1) V0s) (forall ((V1y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1y) V0s) ((mono_2Ec_2Earithmetic_2E_3C_3D V1y) (mono_2Ec_2Epred__set_2EMAX__SET V0s)))))) (=> _let_2 (= _let_1 mono_2Ec_2Enum_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V2ll_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 (s _let_4))) (= (_let_5 ((c_2Ellist_2ELNTH_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_2)) (_let_5 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_4)) ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (c_2Ellist_2ELNTH_2E1 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Ellist_2ELTL_2E1 _let_2))))))))))))) (forall ((V0ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_2 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)) (_let_2 (c_2Ellist_2ELHD_2E1 _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Epred__set_2EINTER_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epred__set_2EINTER_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u) (V3s0_2E0 u) (V4t0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V4t0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V3s0_2E0))) (let ((_let_6 (c_2Epred__set_2EINJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1s_2E0))) (let ((_let_9 (_let_1 V2t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_8) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_9) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (= (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (forall ((V0s_2E0 u) (V1f_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((s (_let_3 _let_7)) V1f_2E0))) (let ((_let_9 (c_2Epred__set_2EITSET_2E3 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Epred__set_2EFINITE_2E1 _let_6))) (= (_let_1 ((_let_9 _let_6) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_10 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) F0_2E0)) _let_6))) _let_2) (_let_1 ((_let_9 (_let_5 (c_2Epred__set_2EREST_2E1 _let_6))) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_6))))) _let_2))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (V0s_2E0 u)) (= (exists ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 V0s_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V1x_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((A_27a d) (V0ll_2E0 u)) (= (exists ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0)))))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0xss_2E0 u) (V1choice_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) F1_2E0)) ((s _let_3) V0xss_2E0)))) ((s _let_2) V1choice_2E0)))) (forall ((V2xs_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2xs_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0xss_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s (_let_3 A_27a)) V1choice_2E0)) _let_2))) _let_2))))))))))))))) (=> (forall ((V0xss_2E0 u) (V1choice_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V1choice_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0xss_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_7 _let_10))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_9 _let_12)) F0_2E0)) _let_6))) _let_4)) (_let_11 ((c_2Epair_2E_2C_2E2 ((s _let_1) ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_6))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F1_2E0)) _let_6))) _let_4)))))))))))))))))) (forall ((V0xss_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0xss_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_2 A_27a)) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (= (_let_4 (c_2Eset__relation_2Eall__choices_2E1 _let_5)) (_let_4 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_5))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0)))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 ((mono_2Ec_2Enumposrep_2El2n V0b) V1l))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (not (= _let_1 mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) V1l)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Elogroot_2ELOG V0b) _let_1))) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V1l))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V2t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 _let_3) _let_2) _let_5))) (= _let_5 (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EREST_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Epred__set_2EREST_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_3 V0y_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V0y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (=> (and (exists ((V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27c)) V3f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V4g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2u_2E0))))))) (exists ((V5h_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V5h_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2u_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (_let_1 (((c_2Epred__set_2EITSET_2E3 ((s (_let_3 ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_2)) _let_2))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (= (exists ((V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (and (= (_let_1 V0s_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V18t) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1b) V18t)) (((F9 V2a) V1b) V18t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b) V16t) (V2a V16t)) (((F8 V2a) V1b) V16t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V24t mono_2Etyop_2Enum_2Enum)) (= (((F13 V2a) V0c) V24t) (or (V2a V24t) (not (V0c V24t))))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V25t mono_2Etyop_2Enum_2Enum)) (= (((F14 V2a) V1b) V25t) (or (V1b V25t) (V2a V25t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V21t mono_2Etyop_2Enum_2Enum)) (= (((F11 V2a) V0c) V21t) (or (V2a V21t) (V0c V21t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V6t) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1b) V6t)) (((F1 V2a) V1b) V6t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (((F0 V2a) V1b) V4t) (and (V2a V4t) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b) V4t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (((F7 V2a) V0c) V14t) (and (not (V0c V14t)) (V2a V14t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (and (V1b V10t) (V2a V10t)) (((F4 V2a) V1b) V10t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V9t) (V0c V9t)) (((F3 V2a) V0c) V9t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V20t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1b) V0c) V20t)) ((((F10 V2a) V1b) V0c) V20t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V23t mono_2Etyop_2Enum_2Enum)) (= ((((F12 V2a) V1b) V0c) V23t) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V0c) V23t) (V2a V23t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (and (V2a V8t) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1b) V0c) V8t)) ((((F2 V2a) V1b) V0c) V8t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= ((((F5 V2a) V1b) V0c) V12t) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V0c) V12t) (V2a V12t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((((F6 V2a) V1b) V0c) V13t) (and (V2a V13t) (V1b V13t) (not (V0c V13t))))) (forall ((V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (and (V1b V3x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V3x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V2a) V1b)) V3x))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F11 V2a) V0c)) V19x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V1b) V19x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1b) V0c) V19x))) ((mono_2Ec_2ETemporal__Logic_2ENEXT (((F10 V2a) V1b) V0c)) V19x))) (forall ((V22x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT (((F12 V2a) V1b) V0c)) V22x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F13 V2a) V0c)) V22x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V0c) V22x) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F14 V2a) V1b)) V22x))))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F9 V2a) V1b)) V17x) (or (V1b V17x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V17x)))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F8 V2a) V1b)) V15x) (or (V1b V15x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V15x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT (((F5 V2a) V1b) V0c)) V11x) (or ((mono_2Ec_2ETemporal__Logic_2ENEXT (((F6 V2a) V1b) V0c)) V11x) (and (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V0c) V11x) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F7 V2a) V0c)) V11x))))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F3 V2a) V0c)) V7x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F4 V2a) V1b)) V7x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1b) V0c) V7x))) ((mono_2Ec_2ETemporal__Logic_2ENEXT (((F2 V2a) V1b) V0c)) V7x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F1 V2a) V1b)) V5x) (and ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V5x) (V1b V5x)))))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EUNIV_2E1 ((s A_27a) V0x_2E0))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (mono_2Ec_2Epred__set_2Ecountable_2Emono_2Etyop_2Enum_2Enum V0s)) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u) (V2x1_2E0 u) (V3x2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3x2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_4 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27b))))) (let ((_let_5 (_let_1 V2x1_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4a_2E0 u)) (let ((_let_1 ((s A_27a) V4a_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (s _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V3x2_2E0)))))) (= (_let_5 ((app_2E2 (_let_4 V0f1_2E0)) _let_1)) (_let_5 ((app_2E2 (_let_4 V1f2_2E0)) _let_1))))))))))) (= (_let_4 ((c_2Elist_2EOPT__MMAP_2E2 (_let_3 V0f1_2E0)) _let_5)) (_let_4 ((c_2Elist_2EOPT__MMAP_2E2 (_let_3 V1f2_2E0)) _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (= _let_3 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1acc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1acc_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (_let_1 (((c_2Ebag_2EITBAG_2E3 ((s (_let_3 ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) ((s (_let_3 tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)) _let_2)) _let_2))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0s2_2E0 u) (V1s1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s2_2E0))) (let ((_let_4 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_2 V1s1_2E0))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0s2_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V3f1_2E0)) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V2f2_2E0)) _let_1)))))))))) (= _let_6 _let_3)) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_4 V3f1_2E0)) _let_6))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_4 V2f2_2E0)) _let_3)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erelation_2ERSUBSET_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERSUBSET_2E0)) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2ESUM__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epred__set_2ESUM__IMAGE_2E1 ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (_let_1 A_27c))))) (let ((_let_4 (_let_3 V0g_2E0))) (= (_let_3 ((c_2EreaderMonad_2EMCOMPOSE_2E2 ((s (_let_2 (_let_1 A_27a))) c_2EreaderMonad_2EUNIT_2E0)) _let_4)) _let_4)))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 V0s1_2E0))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EINTER_2E2 (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_5))) (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2b_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V0f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1a_2E0))) (= (_let_6 ((c_2Epred__set_2EPREIMAGE_2E2 _let_4) ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_7) _let_1)))) (_let_6 ((c_2Epred__set_2EINTER_2E2 (_let_6 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) ((c_2Ecombin_2Eo_2E2 ((s (_let_5 A_27b)) c_2Epair_2EFST_2E0)) _let_4))) _let_7))) (_let_6 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27c)) ((c_2Ecombin_2Eo_2E2 ((s (_let_5 A_27c)) c_2Epair_2ESND_2E0)) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (= (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_2)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EDELETE_2E0)) _let_6))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2s_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2s_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((s (_let_4 _let_7)) V0f_2E0))) (let ((_let_9 (c_2Epred__set_2EITSET_2E3 _let_8))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_6))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_3 V4x_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_3 V5y_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2))))))))))))))) (= (_let_1 ((_let_9 (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_6))) _let_2)) (_let_1 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_3))) (_let_1 ((_let_9 (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_3))) _let_2)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_4)))) _let_4))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2EINTER_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (_let_1 V1t_2E0))) (= (_let_1 (_let_3 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_2)))) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1x_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Erich__list_2EREPLICATE_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))) ((s A_27a) V1x_2E0)))))) V0n))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (mono_2Ec_2Epred__set_2Ecountable_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum) (forall ((A_27a d) (V0p_2E0 u) (V1q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1q_2E0))) (let ((_let_3 (_let_1 V0p_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_3))) _let_2)))) _let_2))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum) (V0n mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1i) V2j) ((mono_2Ec_2Eprim__rec_2E_3C V2j) V0n)) (((F1 V1i) V2j) V0n))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2j mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2j)))) (let ((_let_3 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_3))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_10 (_let_9 _let_7))) (let ((_let_11 (_let_9 _let_10))) (= (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))))) _let_5))) _let_2)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 (_let_4 (c_2Esum_2EINL_2E1 _let_5))) (_let_4 (c_2Esum_2EINL_2E1 _let_2))))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (((F1 V1i) V2j) V0n)))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_2))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (_let_5 _let_4)))) (let ((_let_7 (s (tyop_2Ewellorder_2Ewellorder _let_2)))) (= (_let_7 (c_2Ewellorder_2EfromNatWO_2E1 _let_1)) (_let_7 (c_2Ewellorder_2Ewellorder__ABS_2E1 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_4)) (c_2Epair_2EUNCURRY_2E1 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_1)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0S_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0S_2E0)))) (forall ((V1t_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V0S_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27b)) V2f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27state))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V2n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0)) _let_1)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))) V2n)) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V0f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 ((c_2EindexedLists_2EfupdLast_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V0f_2E0)) _let_2)) _let_2)))) (forall ((V1h_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1h_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V2f_2E0))) (= (_let_1 ((c_2EindexedLists_2EfupdLast_2E2 _let_5) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 ((app_2E2 _let_5) _let_4))) _let_2))))))))) (forall ((V3v5_2E0 u) (V4v4_2E0 u) (V5h_2E0 u) (V6f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4v4_2E0)) (_let_1 V3v5_2E0))))) (let ((_let_4 (c_2EindexedLists_2EfupdLast_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V6f_2E0)))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_2 V5h_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_3)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (let ((_let_5 ((s A_27a) V0x_2E0))) (let ((_let_6 (c_2Epred__set_2EINSERT_2E2 _let_5))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (_let_6 _let_3))) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2))) _let_4) (_let_1 (_let_6 _let_4)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (and (forall ((V1e_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s A_27a) V1e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V2s_2E0))) (let ((_let_5 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_6 (c_2Epred__set_2EPROD__IMAGE_2E2 _let_5))) (let ((_let_7 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_4))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 (_let_6 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_1) _let_4))))) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_7 (_let_6 (_let_3 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_1)))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Epred__set_2EPROD__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_3 ((c_2EDecode_2Eenc2dec_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_2 _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))))))))) (forall ((V4x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V4x_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (exists ((V5y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)) (_let_1 V4x_2E0))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (_let_2 V0s_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EBIGUNION_2E1 (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_5 c_2Epred__set_2EEMPTY_2E0))))))) (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))))))))) (forall ((A_27a d)) (= (exists ((V0f_2E0 u)) (and (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V0f_2E0)))) (=> (= (_let_1 (_let_4 _let_3)) (_let_1 (_let_4 _let_2))) (= _let_3 _let_2))))))) (exists ((V3y_2E0 u)) (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (not (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V0f_2E0)) (_let_1 V4x_2E0))) (_let_1 V3y_2E0)))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_4 _let_1))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EINJ_2E3 _let_8) _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Epred__set_2EINJ_2E0)) _let_8))) _let_6))) _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EFUNSET_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0)) ((s (_let_1 A_27b)) V0f_2E0))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3f_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Equotient_2ERES__EXISTS__EQUIV_2E2 ((s (_let_2 _let_3)) V0R_2E0)) ((s _let_3) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_2 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool))) _let_1)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 ((s (_let_1 _let_2)) V0R_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2Eequiv__on_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Epred__set_2ECARD_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_5 tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 _let_4) _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Efcp_2Ebit0 A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Efcp_2EBIT0A_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Efcp_2EBIT0A_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EFUNSET_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EFUNSET_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (_let_1 V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (= (_let_1 c_2Epred__set_2EUNIV_2E0) (_let_1 ((c_2Epred__set_2ECROSS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (forall ((A_27a d) (V0s2_2E0 u) (V1s1_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s1_2E0))) (let ((_let_5 (c_2Epred__set_2Epairwise_2E2 ((s (_let_1 _let_2)) V2R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V0s2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_3 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_7))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V2R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) (_let_7 V0s2_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) (_let_7 V1s1_2E0))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_4))))))))))))) _let_242 (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Eencode__blist_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6)) c_2EEncode_2Eencode__blist_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0A_2E0 u) (V1B_2E0 u) (V2C_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2C_2E0))) (let ((_let_3 (_let_1 V0A_2E0))) (let ((_let_4 (_let_1 V1B_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1s_2E0))) (= (_let_5 (_let_4 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_6) _let_3)))) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_3)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2x_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3l2_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_2 V0l_2E0)))) (let ((_let_5 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_2 V1l1_2E0))) (=> (= (_let_6 (c_2Esorting_2EPERM_2E1 _let_7)) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 _let_3))))) (= (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_7)))) (_let_6 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_5 (_let_2 (_let_4 _let_3)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0n) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) V0n)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27c)) V1v_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (s ((tyop_2Efcp_2Ecart A_27b) A_27c)))) (= (_let_3 ((c_2Efcp_2EFCP__MAP_2E2 _let_2) _let_1)) (_let_3 (c_2Efcp_2EL2V_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 tyop_2Enum_2Enum))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2Eis__measure__maximal_2E3 _let_7) _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2Eis__measure__maximal_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))) (_let_2 c_2Epred__set_2EUNIV_2E0))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0R_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V0R_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (let ((_let_10 (_let_4 _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F1_2E0)) _let_6))) _let_3))) _let_2)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 _let_6) _let_3) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V0R_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_4 _let_8))) (let ((_let_11 (_let_4 _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_3))) _let_2)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_3))) _let_2))))))))))))))))) (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 V0R_2E0)))))) (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s _let_2) (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V0R_2E0)))) ((s A_27a) V1x_2E0))))))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s _let_2) (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F1_2E0)) ((s _let_3) V0R_2E0)))) ((s A_27a) V3x_2E0))))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (c_2Elist_2ELAST_2E1 (_let_3 ((c_2Elist_2ESNOC_2E2 _let_2) (_let_3 V1l_2E0))))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1x_2E0 u)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 _let_1) _let_2)) (_let_3 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) (c_2Ecombin_2EK_2E1 _let_2))) _let_1))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2p_2E0 u) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1Q_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((s _let_3) V2p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F1_2E0)) _let_4))) _let_7))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_4))) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s A_27b) (c_2Epair_2ESND_2E1 _let_4))) _let_2))))))))))))))) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1Q_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 ((s _let_5) V2p_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_1))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_3))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (tyop_2Emin_2Efun _let_5))) (let ((_let_12 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_11 _let_12))) (let ((_let_15 (_let_7 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_9 _let_15)) F0_2E0)) _let_4))) _let_2))) _let_6)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_6))) _let_4))) _let_2))))))))))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1Q_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (tyop_2Emin_2Efun _let_5))) (let ((_let_7 (_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (s (_let_6 tyop_2Emin_2Ebool)))) (= (_let_9 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_9 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F0_2E0)) _let_4))) _let_2)))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_27_2E0))) (let ((_let_3 (_let_1 V1l1_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2l2_2E0))) (let ((_let_6 (c_2Esorting_2EPERM_2E2 (_let_1 V0l1_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_5) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EBIGUNION_2E1 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_4 c_2Epred__set_2EEMPTY_2E0))))) _let_3)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EMAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EMAP_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0R_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V0R_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (let ((_let_10 (_let_4 _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F1_2E0)) _let_6))) _let_3))) _let_2)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 _let_6) _let_3) _let_2)))))))))))))))) (=> (forall ((V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V0R_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_4 _let_8))) (let ((_let_11 (_let_4 _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_3))) _let_2)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_3))) _let_2))))))))))))))))) (forall ((V0R_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s _let_2) (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V0R_2E0)))) ((s A_27a) V1x_2E0)))))))))))))) (forall ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 _let_4))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s _let_2) (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F1_2E0)) ((s _let_3) V0R_2E0)))) ((s A_27a) V3x_2E0))))))))) (exists ((V5f_2E0 u)) (let ((_let_1 (s A_27a))) (and (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V5f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V6n))))))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V6n)))))))))))))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V5f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_1 V3x_2E0))))))))))))))))) (forall ((A_27a d) (V0A_2E0 u) (V1B_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1B_2E0))) (let ((_let_4 (_let_2 V0A_2E0))) (= (_let_2 ((c_2Epred__set_2EDELETE_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))) _let_1)) (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_1))) (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27b)) A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EFOLDL_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EFOLDL_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0) V1))) (_let_3 ((c_2Ebool_2ELET_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((s (_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) V1f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_5 ((c_2EindexedLists_2EMAPi_2E2 _let_4) _let_2)) (_let_5 ((c_2Elist_2EGENLIST_2E2 ((s (_let_3 A_27b)) ((c_2Ecombin_2ES_2E2 _let_4) ((s (_let_3 A_27a)) ((c_2Ecombin_2EC_2E2 ((s (_let_3 ((tyop_2Emin_2Efun _let_1) A_27a))) c_2Elist_2EEL_2E0)) _let_2))))) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (s (_let_1 _let_2)))) (let ((_let_5 (_let_4 ((c_2Epred__set_2EREL__RESTRICT_2E2 (_let_4 V0R_2E0)) _let_3)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Eirreflexive_2E1 (_let_4 (c_2Erelation_2ETC_2E1 _let_5)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Edomain_2E1 (_let_3 ((c_2Eset__relation_2Errestrict_2E2 (_let_3 V1r_2E0)) _let_2))))) _let_2))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (_let_2 V2t_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EFUNSET_2E2 _let_3) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((c_2Epred__set_2Eschroeder__close_2E2 _let_6) _let_4))) _let_3)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))) (= (_let_1 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) ((c_2EindexedLists_2Efindi_2E2 _let_2) _let_3))) _let_3)) _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epred__set_2ESUBSET_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (A_27f d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27f))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27d))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27f))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (= (_let_7 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_3)))) (_let_7 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 _let_6)) (c_2Epred__set_2EPREIMAGE_2E1 _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EDFUNSET_2E3 _let_7) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EDFUNSET_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2ESNOC_2E2 ((s A_27b) V2x_2E0)))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) (_let_1 (_let_4 _let_2)))) (_let_1 (_let_4 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 V0l_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (and _let_263 (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1s) (= (mono_2Ec_2Epred__set_2EPROD__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0x) V1s)) ((mono_2Ec_2Earithmetic_2E_2A V0x) (mono_2Ec_2Epred__set_2EPROD__SET ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V1s) V0x))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Eenc2dec_2E2 _let_7) _let_5)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0R2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V1R1_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_4)) (_let_3 (c_2Eset__relation_2Erel__to__reln_2E1 _let_2))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2ESUM__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_5 (c_2Epred__set_2ESUM__IMAGE_2E2 _let_4))) (let ((_let_6 (s tyop_2Enum_2Enum))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 _let_3))))) (let ((_let_8 ((s A_27a) V2e_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (_let_5 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_8))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_8) _let_3)))) ((mono_2Ec_2Earithmetic_2E_2D _let_7) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 _let_4) _let_8))))) _let_7))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 _let_2)))) (= (_let_3 ((c_2Epred__set_2EREL__RESTRICT_2E2 (_let_3 V0R_2E0)) ((s _let_2) c_2Epred__set_2EEMPTY_2E0))) (_let_3 c_2Erelation_2EEMPTY__REL_2E0)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EREST_2E2 _let_1) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_1))) (not (= _let_3 (_let_2 (c_2Epred__set_2ECHOICE_2E1 _let_1))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EGSPEC_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (= mono_2Ec_2Epred__set_2ESUM__SET (mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s2_2E0))) (let ((_let_4 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V2f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1s1_2E0))) (=> (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V3x_2E0))) (= (= _let_5 _let_2) (= (_let_4 (_let_3 _let_5)) (_let_4 (_let_3 _let_2)))))))))) (= (= _let_6 _let_3) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (= (_let_2 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_1))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2ELINV__OPT_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2ELINV__OPT_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2m_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_1 V1x_2E0))) (= (= _let_2 _let_5) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2Eis__measure__maximal_2E3 ((s (_let_3 tyop_2Enum_2Enum)) V2m_2E0)) (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_5) (_let_4 c_2Epred__set_2EEMPTY_2E0)))) _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V1x_2E0)))) (= (_let_1 (_let_3 _let_2)) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (_let_3 (_let_1 c_2Epred__set_2EEMPTY_2E0)))) _let_2))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2y_2E0 u) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0x_2E0))) (let ((_let_6 (_let_4 V2y_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (or (= _let_6 _let_5) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F1_2E0)) _let_6))) _let_5))) _let_3)))))))))))))) (=> (forall ((V0x_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0x_2E0))) (let ((_let_6 (_let_4 V2y_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_1 _let_13)) F0_2E0)) _let_5))) _let_3))) _let_6)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_3))))))))))))))))))) (forall ((V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 ((s A_27a) V0x_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) F0_2E0)) _let_5))) _let_4)))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0sp_2E0 u) (V3u_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3u_2E0))) (let ((_let_4 (_let_2 V0sp_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3)) (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)))))))))) (forall ((V0sp_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 V0sp_2E0))) (let ((_let_7 (_let_2 _let_1))) (=> (and (forall ((V2t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 V0sp_2E0)))))))))) (not (= _let_4 (_let_3 c_2Epred__set_2EEMPTY_2E0)))) (= (_let_5 (c_2Epred__set_2EBIGINTER_2E1 _let_4)) (_let_5 ((c_2Epred__set_2EDIFF_2E2 _let_6) (_let_5 (c_2Epred__set_2EBIGUNION_2E1 (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F0_2E0)) _let_6))) _let_4)))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0))))))))) (forall ((A_27a d) (V0s_2E0 u)) (not (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 _let_2)) V1f_2E0)) _let_3) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_3))))))))))) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (forall ((V2e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2e_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0)))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_2))) V0n) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((V3e1_2E0 u) (V4e2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4e2_2E0))) (let ((_let_4 (_let_2 V3e1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6))) (not (= _let_4 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3)))))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2))))) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))) V0n))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0v_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 (c_2Efcp_2EFCP__HD_2E1 _let_1)) (_let_2 ((c_2Efcp_2Efcp__index_2E2 _let_1) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V3P_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s A_27b) ((app_2E2 _let_6) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0f_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V3P_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s A_27b))) (let ((_let_9 (_let_8 V2x_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 ((s A_27a) V1y_2E0))) (=> (and (= _let_9 (_let_8 ((app_2E2 _let_5) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 _let_3) _let_11)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_9) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_3)))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2ESING_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2ESING_2E0)) _let_2)))))))) (forall ((V0A (-> mono_2Etyop_2Enum_2Enum Bool)) (V1B (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1B) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0A)) (= (mono_2Ec_2Epred__set_2EMAX__SET ((mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum V0A) V1B)) ((mono_2Ec_2Earithmetic_2EMAX (mono_2Ec_2Epred__set_2EMAX__SET V0A)) (mono_2Ec_2Epred__set_2EMAX__SET V1B))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EIMAGE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)))))))))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V4t)) ((F1 V2a) V4t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1b) V3t) (not (V1b V3t)))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F0 V1b)) V0t) (and (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V1b) V0t) mono_2Ec_2Ebool_2ET) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a) V1b) V0t) ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V2a) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V2a) V0t) ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F1 V2a)) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V1b) V0t) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V2a) V0t)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1b) V2a) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a) V1b) V0t) mono_2Ec_2Ebool_2EF) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V1b) V0t) mono_2Ec_2Ebool_2ET))))))) (= (_let_262 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool)) (_let_262 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 c_2Epred__set_2EUNIV_2E0) (_let_2 (c_2Epred__set_2EPOW_2E1 ((s _let_1) c_2Epred__set_2EUNIV_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (=> (and (forall ((V4f_2E0 u) (V5i mono_2Etyop_2Enum_2Enum) (V6v7_2E0 u) (V7v8_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (_let_4 _let_7))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) V0P_2E0)) ((s _let_5) V4f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5i))))) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27b) V6v7_2E0)) (_let_3 V7v8_2E0)))))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))) (forall ((V8f_2E0 u) (V9i mono_2Etyop_2Enum_2Enum) (V10h1_2E0 u) (V11t1_2E0 u) (V12h2_2E0 u) (V13t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V13t2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V11t1_2E0))) (let ((_let_7 (s tyop_2Enum_2Enum))) (let ((_let_8 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_9 (_let_8 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (_let_8 _let_11))) (let ((_let_13 (app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_12)) V0P_2E0)) ((s _let_9) V8f_2E0)))))) (let ((_let_14 (s _let_11))) (let ((_let_15 (s _let_10))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 (_let_13 (_let_7 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V9i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) _let_6))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((app_2E2 (_let_15 ((app_2E2 (_let_14 (_let_13 (_let_7 (i_mono_2Etyop_2Enum_2Enum V9i))))) (_let_5 ((c_2Elist_2ECONS_2E2 ((s A_27b) V10h1_2E0)) _let_6))))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27c) V12h2_2E0)) _let_3))))))))))))))))))))))) (forall ((V1f_2E0 u) (V2i mono_2Etyop_2Enum_2Enum) (V3v0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (_let_3 _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) V0P_2E0)) ((s _let_4) V1f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2i))))) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) V3v0_2E0))))))))))))) (forall ((V14v_2E0 u) (V15v1 mono_2Etyop_2Enum_2Enum) (V16v2_2E0 u) (V17v3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (_let_3 _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) V0P_2E0)) ((s _let_4) V14v_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V15v1))))) ((s _let_2) V16v2_2E0)))) ((s _let_1) V17v3_2E0)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1P_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V0s_2E0))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EUNION_2E2 _let_5) (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7g_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V3R2_2E0))) (let ((_let_7 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (c_2Equotient_2Erespects_2E2 ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_7) _let_6))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (tyop_2Emin_2Efun A_27c))) (let ((_let_12 ((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_11 A_27a)) V2rep1_2E0)) ((s (_let_5 A_27d)) V4abs2_2E0)))) (let ((_let_13 (s (_let_11 A_27d)))) (let ((_let_14 (_let_3 V6f_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_7) _let_6) _let_14) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_14))) (= (_let_13 (_let_12 _let_14)) (_let_13 (_let_12 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_4)))))))))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))) (forall ((V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (c_2Epred__set_2ESUBSET_2E2 (_let_1 V1s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l1_2E0 u) (V2l1_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l1_27_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1l1_2E0))) (=> (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_6)) (_let_5 (c_2Esorting_2EPERM_2E1 _let_3))) (= (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_6)))) (_let_5 (c_2Esorting_2EPERM_2E1 (_let_2 (_let_4 _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELUNZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELUNZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 _let_2))) (or (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Epred__set_2Ecount V1n) V0m) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2w_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V2w_2E0))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0y_2E0))) (let ((_let_6 (_let_4 V1x_2E0))) (let ((_let_7 (c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (or (= _let_6 _let_5) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 (c_2Eset__relation_2Estrict_2E1 _let_3)))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (and (forall ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1l_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V2x_2E0)) (_let_2 V1l_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3l_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2u_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1s_2E0))) (let ((_let_6 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V2u_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (_let_6 _let_8))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (_let_6 _let_5))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Efcp_2Ecart A_27a) A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EPSUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EPSUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27c))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (s (_let_1 _let_2)))) (let ((_let_5 (_let_4 ((c_2Epred__set_2EREL__RESTRICT_2E2 (_let_4 V0R_2E0)) _let_3)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EStrongOrder_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_5))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7g_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (c_2Equotient_2Erespects_2E2 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V3R2_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27c))) (let ((_let_10 ((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_9 A_27a)) V2rep1_2E0)) ((s (_let_5 A_27d)) V4abs2_2E0)))) (let ((_let_11 (s (_let_9 A_27d)))) (let ((_let_12 (_let_3 V6f_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_12))) (= (_let_11 (_let_10 _let_12)) (_let_11 (_let_10 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_4)))) (forall ((V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V8x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V0R1_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V3R2_2E0)) (_let_5 ((app_2E2 (_let_4 V6f_2E0)) _let_6))))) (_let_5 ((app_2E2 (_let_4 V7g_2E0)) _let_2))))))))))))))))))))))))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (= (_let_3 (c_2Epred__set_2EPREIMAGE_2E1 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0))) (_let_3 c_2Ecombin_2EI_2E0)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (= (_let_1 ((app_2E2 _let_4) ((s A_27a) (((c_2Epred__set_2ERINV_2E3 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)) _let_2)))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0v0_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((((c_2EindexedLists_2EMAP2ia_2E4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V2f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i))) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27c)) V0v0_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V3v8_2E0 u) (V4v7_2E0 u) (V5i mono_2Etyop_2Enum_2Enum) (V6f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_1 ((((c_2EindexedLists_2EMAP2ia_2E4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) V6f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5i))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27b) V4v7_2E0)) (_let_2 V3v8_2E0)))) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V7t2_2E0 u) (V8t1_2E0 u) (V9i mono_2Etyop_2Enum_2Enum) (V10h2_2E0 u) (V11h1_2E0 u) (V12f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V7t2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V8t1_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_6))) (let ((_let_8 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) V12f_2E0))) (let ((_let_9 (c_2EindexedLists_2EMAP2ia_2E4 _let_8))) (let ((_let_10 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_11 ((s A_27c) V10h2_2E0))) (let ((_let_12 ((s A_27b) V11h1_2E0))) (let ((_let_13 (_let_5 (i_mono_2Etyop_2Enum_2Enum V9i)))) (= (_let_10 (((_let_9 _let_13) (_let_3 ((c_2Elist_2ECONS_2E2 _let_12) _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_11) _let_2)))) (_let_10 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_13))) _let_12))) _let_11))) (_let_10 (((_let_9 (_let_5 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V9i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_4) _let_2))))))))))))))))))))) (= (_let_260 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Epred__set_2EPROD__IMAGE_2Emono_2Etyop_2Enum_2Enum)) (_let_260 c_2Epred__set_2EPROD__IMAGE_2E0)) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (c_2Epred__set_2EINSERT_2E2 _let_5))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 (_let_6 _let_3))) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2))) _let_4) (_let_1 (_let_6 _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1w2_2E0 u) (V2w1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w2_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V2w1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (s (_let_6 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_6 A_27a)) c_2Eoption_2ETHE_2E0)) (_let_7 ((c_2Epred__set_2EDELETE_2E2 (_let_7 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_5 _let_3)) ((c_2Ewellorder_2Ewo2wo_2E2 _let_4) _let_1))) ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2Ewellorder_2Eiseg_2E2 _let_4) ((s A_27b) V0x_2E0)))))) ((s _let_3) c_2Eoption_2ENONE_2E0)))))) (_let_2 (c_2Ewellorder_2EelsOf_2E1 _let_1))))))))))))) (forall ((A_27a d)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EDFUNSET_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1Q_2E0)) ((s (_let_1 A_27b)) V2x_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V2x_2E0)) _let_1))) ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V1Q_2E0)) _let_1)))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINSERT_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_3))) (= _let_3 _let_2)))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EDFUNSET_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EDFUNSET_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_2)) _let_2)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Elinear__order_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1s))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0t_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0t_2E0)))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_3))) (=> ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_2)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (V0m_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2Eis__measure__maximal_2E3 ((s (_let_1 tyop_2Enum_2Enum)) V0m_2E0)) _let_2) _let_3))) (and (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (app_2E2 ((s (_let_2 tyop_2Enum_2Enum)) V0m_2E0)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_1 V3y_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (_let_3 (_let_1 V2x_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27d)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27e) A_27b)) V5rep2_2E0)))) (forall ((V6R3_2E0 u) (V7abs3_2E0 u) (V8rep3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V6R3_2E0)) ((s (_let_1 A_27f)) V7abs3_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)))) (forall ((V9f1_2E0 u) (V10f2_2E0 u) (V11x1_2E0 u) (V12x2_2E0 u) (V13y1_2E0 u) (V14y2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V14y2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V12x2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27c))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (s (_let_7 _let_6)))) (let ((_let_9 (_let_8 V10f2_2E0))) (let ((_let_10 (s A_27c))) (let ((_let_11 (_let_1 V13y1_2E0))) (let ((_let_12 (_let_3 V11x1_2E0))) (let ((_let_13 (_let_8 V9f1_2E0))) (let ((_let_14 (tyop_2Emin_2Efun A_27c))) (let ((_let_15 (_let_14 tyop_2Emin_2Ebool))) (let ((_let_16 ((s (_let_14 _let_15)) V6R3_2E0))) (let ((_let_17 (s tyop_2Emin_2Ebool))) (let ((_let_18 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_19 ((s (_let_7 _let_18)) V0R1_2E0))) (let ((_let_20 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_21 ((s (_let_5 _let_20)) V3R2_2E0))) (let ((_let_22 (tyop_2Emin_2Efun _let_6))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_19) ((s (_let_22 (_let_22 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_21) _let_16))) _let_13) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((app_2E2 ((s _let_20) ((app_2E2 _let_21) _let_12))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((app_2E2 ((s _let_18) ((app_2E2 _let_19) _let_11))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((app_2E2 ((s _let_15) ((app_2E2 _let_16) (_let_10 (((c_2Ecombin_2EC_2E3 _let_13) _let_12) _let_11))))) (_let_10 (((c_2Ecombin_2EC_2E3 _let_9) _let_4) _let_2)))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u) (V1v_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V1v_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 ((s A_27a) V0a_2E0))) (let ((_let_5 (s (_let_1 ((tyop_2Esum_2Esum A_27b) tyop_2Eone_2Eone))))) (= (_let_5 ((c_2Efcp_2EFCP__CONS_2E2 _let_4) _let_2)) (_let_5 (c_2Efcp_2EL2V_2E1 (_let_3 ((c_2Elist_2ECONS_2E2 _let_4) (_let_3 (c_2Efcp_2EV2L_2E1 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 ((s (_let_1 A_27b)) V1f_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 _let_3) _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2)) _let_2)))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (let ((_let_4 (s _let_2))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (let ((_let_4 (s _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n))))) (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n))))) (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1n) V2d)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l1_27_2E0 u) (V2l2_2E0 u) (V3l2_27_2E0 u) (V4P_2E0 u) (V5P_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V3l2_27_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l1_27_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2l2_2E0))) (let ((_let_8 (_let_3 V0l1_2E0))) (=> (and (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((s A_27a) V6x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 _let_3)))) (let ((_let_6 (s _let_3))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l1_27_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_1) (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) V3l2_27_2E0))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V4P_2E0)) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V5P_27_2E0)) _let_2))) _let_1))))))))))))) (= _let_7 _let_2) (= _let_8 _let_4)) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 (_let_5 V4P_2E0)) _let_8) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 (_let_5 V5P_27_2E0)) _let_4) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1A_2E0))) (let ((_let_3 (_let_1 V0B_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (let ((_let_5 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_3)))) (let ((_let_6 (c_2Epred__set_2EINTER_2E2 _let_2))) (and (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_5) _let_2)) _let_2) (= (_let_1 (_let_6 _let_4)) _let_2) (= (_let_1 (_let_6 _let_5)) _let_2) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_2)) _let_2))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a)) (c_2Ecombin_2EK_2E1 ((s A_27a) V0i_2E0)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V1P_2E0)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))) (let ((_let_5 ((s A_27a) V1x_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_5))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2)))) ((mono_2Ec_2Earithmetic_2E_2D _let_4) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_4)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1s) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0x) V1s)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (mono_2Ec_2Epred__set_2ESUM__SET V1s)))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u) (V2s3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s3_2E0))) (let ((_let_3 (_let_1 V1s2_2E0))) (let ((_let_4 (_let_1 V0s1_2E0))) (let ((_let_5 (c_2Epred__set_2ESUBSET_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2x_2E0 u) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 V0s_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_9 _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_1 _let_11)) F1_2E0)) _let_5))) _let_8))) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4)))))))))))))))))) (=> (forall ((V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_1 _let_10))) (let ((_let_13 (_let_7 _let_12))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_7 _let_13)) F0_2E0)) _let_5))) _let_4))) _let_6)) (_let_11 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_1 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_4))))))))))))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1t_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (= (_let_3 ((c_2Epred__set_2EDIFF_2E2 _let_5) _let_4)) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_5))) _let_4))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V0x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_3 (c_2Epred__set_2EBIGUNION_2E1 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (=> (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((A_27a d) (V0g_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V1f_2E0)) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V0g_2E0)) _let_1)))))))))) (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V1f_2E0)) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 (_let_3 V0g_2E0)) _let_1))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_3 V1f_2E0)) _let_2)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_3 V0g_2E0)) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_2) V0f_2E0)) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EDFUNSET_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0)) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2Q_2E0)))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_1))) ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V2Q_2E0)) _let_1))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (= (_let_1 c_2Epred__set_2EEMPTY_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1s_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2EdirGraph_2EEXCLUDE_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EdirGraph_2EEXCLUDE_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EBIGINTER_2E1 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_4 c_2Epred__set_2EEMPTY_2E0))))) _let_3)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (= (exists ((V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V1f_2E0)) _let_1)))))))))) (exists ((V3y_2E0 u)) (let ((_let_1 ((s A_27a) V3y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_4 A_27a)) V1f_2E0)) ((s (_let_4 tyop_2Emin_2Ebool)) V2s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) mono_2Ec_2Enum_2E0) (forall ((V1e_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s A_27a) V1e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V2s_2E0))) (let ((_let_5 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_6 (c_2Epred__set_2ESUM__IMAGE_2E2 _let_5))) (let ((_let_7 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_4))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 (_let_6 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_1) _let_4))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 _let_5) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_7 (_let_6 (_let_3 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_1))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V2f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2ESURJ_2E3 _let_4) _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Epred__set_2ECARD_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_6 (c_2Epred__set_2ECARD_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 _let_4) _let_3) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Epred__set_2Echooser_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2Echooser_2E0)) _let_3))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (_let_1 V2t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_5 A_27a)) V0f_2E0)) ((s (_let_5 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))) (exists ((V3N mono_2Etyop_2Enum_2Enum)) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V3N) V4n) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n))))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2t_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2ECROSS_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2ESWHEN _let_1) V0b)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1f_2E0 u) (V2fn1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_3 ((s _let_2) V2fn1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 V0x_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_8))) (= (and (forall ((V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4t_2E0))) (let ((_let_4 ((s A_27a) V3h_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (app_2E2 (_let_6 V2fn1_2E0)))) (let ((_let_8 (s A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_5))) (= (_let_8 (_let_7 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))) (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_9)) V1f_2E0)) (_let_8 (_let_7 _let_3))))) _let_4))) _let_3))))))))))))) (= (_let_6 ((app_2E2 _let_3) ((s _let_1) c_2Elist_2ENIL_2E0))) _let_7)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_4 _let_9)) F0_2E0)) _let_7))) ((s _let_5) V1f_2E0)))) _let_3)))))))))))))) (forall ((V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) F0_2E0)) ((s A_27b) V0x_2E0)))) ((s _let_3) V1f_2E0)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_2) V0f_2E0)) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EFUNSET_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0)))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0))))))))))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s2_2E0))) (let ((_let_3 (_let_1 V0s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4y_2E0 u) (V1s_2E0 u) (V0R_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) V0R_2E0))) (let ((_let_7 (s _let_4))) (let ((_let_8 (_let_7 V1s_2E0))) (let ((_let_9 (_let_1 V4y_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2EIN_2E2 _let_9) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_3 _let_11)) F3_2E0)) _let_9))) _let_8))) _let_6))) _let_2))))))))))))))))) (=> (forall ((V1s_2E0 u) (V0R_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) V0R_2E0))) (let ((_let_7 (s _let_4))) (let ((_let_8 (_let_7 V1s_2E0))) (let ((_let_9 (_let_1 V4y_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (_let_10 _let_4))) (let ((_let_12 (tyop_2Emin_2Efun _let_4))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_15 (s _let_14))) (let ((_let_16 (_let_3 _let_14))) (let ((_let_17 (_let_3 _let_16))) (let ((_let_18 (_let_10 _let_17))) (= (_let_15 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s (_let_12 _let_18)) F2_2E0)) _let_8))) _let_6))) _let_2))) _let_9)) (_let_15 ((c_2Epair_2E_2C_2E2 _let_9) ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_7 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_3 _let_13)) F3_2E0)) _let_9))) _let_8))) _let_6))) _let_2)))))))))))))))))))))))) (=> (forall ((V1s_2E0 u) (V2t_2E0 u) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_2))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_5))) (= (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 ((s A_27a) V3x_2E0))) (let ((_let_6 (_let_1 _let_2))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_1 _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_8))) (and (= (_let_3 V2t_2E0) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_9)) F2_2E0)) _let_4))) ((s _let_6) V0R_2E0)))) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_4)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) (_let_4 V1s_2E0)))) (_let_4 V2t_2E0)))) ((s _let_3) V0R_2E0))))))))))))) (=> (forall ((V1s_2E0 u) (V0R_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 V2t_2E0))) (let ((_let_7 (_let_5 V1s_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_2))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_10 _let_12))) (let ((_let_15 (_let_8 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_10 _let_15)) F0_2E0)) _let_7))) _let_4))) _let_6)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_6) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) F1_2E0)) _let_7))) _let_6))) _let_4))))))))))))))))))))) (forall ((V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 ((s _let_2) V1s_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s (_let_6 tyop_2Emin_2Ebool)))) (= (_let_9 ((c_2Epred__set_2Epartition_2E2 _let_4) _let_5)) (_let_9 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F0_2E0)) _let_5))) _let_4)))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1m Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1m))))) ((s A_27a) V2x_2E0)))) V1m)))) (forall ((V0p_2E0 u) (V1m Bool)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 _let_3) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) F0_2E0)) (_let_4 (i_mono_2Etyop_2Emin_2Ebool V1m))))))) (or (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)) V1m))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1s_2E0))) (let ((_let_8 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 _let_8) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_3) _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2Epred__set_2EREL__RESTRICT_2E4 _let_8) _let_7) _let_3) _let_2)))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (= (_let_2 (((c_2Elist_2ELUPDATE_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) c_2Elist_2ELUPDATE_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V4t) (not (V0b V4t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (or (not (((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V1a)) V0b) V2x)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F1 V0b)) V2x)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x)))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) _let_4))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V3g (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Esum__num_2EGSUM ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p) V1n)))) (=> (forall ((V4x mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0p) V4x) ((mono_2Ec_2Eprim__rec_2E_3C V4x) ((mono_2Ec_2Earithmetic_2E_2B V0p) V1n))) (= (V2f V4x) (V3g V4x)))) (= (_let_1 V2f) (_let_1 V3g))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_4 _let_1))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EINJ_2E3 _let_8) _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Epred__set_2EINJ_2E0)) _let_8))) _let_6))) _let_3)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 (c_2Epred__set_2EREST_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 A_27c)) V1g_2E0))) (let ((_let_6 (s (_let_2 tyop_2Emin_2Ebool)))) (= (_let_6 ((c_2Epred__set_2EPREIMAGE_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_1)))) (_let_6 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_2 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_3))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V3P_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V3P_2E0))) (let ((_let_5 ((s A_27a) V0x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_10)) F0_2E0)) _let_5))) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_5) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0x_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V3P_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 ((s A_27b) V1b_2E0))) (let ((_let_10 (_let_4 V2a_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (and (= _let_10 _let_5) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 _let_3) _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_10) _let_9))) ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) F0_2E0)) _let_5))) _let_3)))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 _let_4) _let_2))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Epred__set_2EINJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) _let_4) _let_1)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))))))))) (forall ((V0p (-> mono_2Etyop_2Eone_2Eone Bool)) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= ((mono_2Ec_2EDecode_2Edecode__unit V0p) V1l) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0p mono_2Ec_2Eone_2Eone)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Eone_2Eone) V1l))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (= (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 _let_2) (_let_1 F0_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_3 V2x_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_3 V3y_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2))))))))))))))) (forall ((V5x_2E0 u) (V6b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V6b_2E0))) (let ((_let_3 ((s A_27a) V5x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 _let_4)) V0f_2E0))) (let ((_let_7 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_7 V1s_2E0))) (let ((_let_9 (c_2Epred__set_2EITSET_2E3 _let_6))) (= (_let_1 ((_let_9 (_let_7 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_8))) _let_2)) (_let_1 ((_let_9 (_let_7 ((c_2Epred__set_2EDELETE_2E2 _let_8) _let_3))) (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 _let_6) _let_3))) _let_2))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 ((s (_let_1 A_27b)) V0f_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 ((c_2Epred__set_2EPREIMAGE_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) (_let_1 c_2Epred__set_2EEMPTY_2E0))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))) (=> (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_4 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_4 _let_8)) F0_2E0)) _let_3))) _let_2)) (_let_7 ((c_2Epair_2E_2C_2E2 _let_2) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V0y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s A_27a) V0y_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) F0_2E0)) _let_3)))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 _let_1)) V0f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27a)) ((c_2Ecombin_2Eo_2E2 ((s (_let_4 A_27a)) c_2Epair_2EFST_2E0)) _let_3))) ((s (_let_2 tyop_2Emin_2Ebool)) ((c_2Ecombin_2Eo_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) c_2Epair_2ESND_2E0)) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (_let_4 _let_3))) _let_2)) (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) (_let_1 V0s_2E0))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V1c_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V1c_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V2n)))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERTC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERTC_2E0)) _let_4)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2Eequiv__on_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2Eequiv__on_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_2))))) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2u_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_1))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epred__set_2ECHOICE_2E0)) _let_2))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V0s_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) V1f_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_5 _let_8))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_2))) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 ((s A_27a) ((app_2E2 _let_7) _let_4))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V4n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))))))))))))))) (forall ((V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (exists ((V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) _let_4) ((mono_2Ec_2Eprim__rec_2E_3C V3m) _let_4)) (=> (= (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3m))))) (= V2n V3m)))))))) (= _let_3 (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) ((s _let_5) V1f_2E0)))) _let_3)))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V1g_2E0)) _let_2) _let_2))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (_let_3 V2f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_1 A_27a)) V1g_2E0)))) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_4) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) _let_3))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Edec2enc_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (not (= V0s mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Epred__set_2EMIN__SET V0s)) (mono_2Ec_2Epred__set_2EMAX__SET V0s)))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EPREIMAGE_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (not (= V0s mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (and (forall ((V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1x) V0s) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Epred__set_2EMIN__SET V0s)) V1x))) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EMIN__SET V0s)) V0s)))) (= (_let_56 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2Ecountable_2Emono_2Etyop_2Enum_2Enum)) (_let_56 c_2Epred__set_2Ecountable_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ewot_2Ecpl_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ewot_2Ecpl_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 (c_2Epred__set_2EPOW_2E1 _let_3)))) (let ((_let_7 ((s A_27a) V0e_2E0))) (= (_let_5 (c_2Epred__set_2EPOW_2E1 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_7) _let_3)))) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_4 _let_1)) (c_2Epred__set_2EINSERT_2E1 _let_7))) _let_6))) _let_6))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)) _let_2)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EINSERT_2E1 _let_1)) (_let_5 ((app_2E2 ((s (_let_2 _let_4)) c_2Epred__set_2EINSERT_2E0)) _let_1))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 _let_4) (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_4) _let_2)))) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Epred__set_2ECOMPL_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2ECOMPL_2E0)) _let_3))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27b) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2P0_2E0 u) (V3Q0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1Q_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V3Q0_2E0))) (let ((_let_7 (_let_3 V2P0_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 _let_6) _let_2)))) (= _let_6 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (= _let_7 (_let_3 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Epred__set_2ESUBSET_2E2 (_let_5 ((c_2Epred__set_2ECROSS_2E2 _let_7) _let_6))) (_let_5 ((c_2Epred__set_2ECROSS_2E2 _let_4) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b))))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2EmapM_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Estate__transformer_2EmapM_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1R_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V1R_2E0)) (_let_1 V2Q_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 (_let_1 V0P_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (let ((_let_4 ((s A_27a) V1e_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_4) _let_3))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3t_2E0))))) (exists ((V4u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V4u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 ((s A_27b) ((app_2E2 _let_4) ((s A_27a) V1e_2E0))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_2)) (_let_1 V3t_2E0)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) V2s_2E0)) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_2))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2Epred__set_2ECHOICE_2E1 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_3 c_2Epred__set_2EEMPTY_2E0))))) _let_2))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EEMPTY_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2EDELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epair_2EFST_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epair_2EFST_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2b_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) V2b_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_1))) _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_4) _let_1))))))))))) (forall ((V0sob_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V0sob_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (let ((_let_5 (_let_2 tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Ebag_2EBIG__BAG__UNION_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27a d) (V0X_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))) (_let_2 V0X_2E0)))) (forall ((V2Y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2Y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) (_let_2 V0X_2E0)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (or (exists ((V1x_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (and (= (_let_1 V0s_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))) (= (_let_1 V0s_2E0) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1q (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWATCH V1q) V2b) V0t0) (and (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (not (V2b ((mono_2Ec_2Earithmetic_2E_2B V3t) V0t0)))) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (not (V1q ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))))) (forall ((V5d mono_2Etyop_2Enum_2Enum)) (=> (and (V2b ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0)) (forall ((V6t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V6t) V5d) (not (V2b ((mono_2Ec_2Earithmetic_2E_2B V6t) V0t0)))))) (and (forall ((V7t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V7t) V5d) (not (V1q ((mono_2Ec_2Earithmetic_2E_2B V7t) V0t0))))) (forall ((V8t mono_2Etyop_2Enum_2Enum)) (V1q (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2B V8t) ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELZIP_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_1) (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))) V1n))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s (_let_1 A_27a)) V0f_2E0))) (let ((_let_4 (_let_2 ((c_2Epred__set_2Eschroeder__close_2E2 _let_3) (_let_2 V1s_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_4))) _let_4)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (V0z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((s (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))) V0z_2E0))) (let ((_let_4 (s _let_2))) (= (_let_4 (c_2Estate__transformer_2EJOIN_2E1 _let_3)) (_let_4 ((c_2Estate__transformer_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ecombin_2EI_2E0))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_3)))) (and (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_4)) _let_2) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 (_let_1 V0s_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 (_let_1 V1t_2E0))))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1x_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V2y_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_7))))) (and (not (= _let_4 _let_7)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (= (_let_125 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum)) (_let_125 c_2Epred__set_2EUNIV_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (and (forall ((V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_2E0)))))))) (forall ((A_27a d) (V0f_2E0 u)) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (let ((_let_4 (s _let_2))) (=> (not (= V1m V2n)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1m))))) (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))))))))))) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((s (_let_1 _let_2)) V0f_2E0))) (let ((_let_4 (s _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_4 ((app_2E2 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))))) (_let_4 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V3n))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_4 (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_4)) _let_3)))) (=> (forall ((V2x_2E0 u) (V3xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3xs_2E0))) (let ((_let_4 ((s A_27b) V2x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_7)) F2_2E0)) _let_4))) _let_3)) (_let_6 (c_2Estate__transformer_2EUNIT_2E1 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))))))) (=> (forall ((V1ms_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (s _let_3))) (let ((_let_7 (_let_6 V1ms_2E0))) (let ((_let_8 (_let_5 _let_3))) (= (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F1_2E0)) _let_7))) _let_1)) (_let_6 ((c_2Estate__transformer_2EBIND_2E2 _let_7) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F2_2E0)) _let_1)))))))))))))) (=> (forall ((V0m_2E0 u) (V1ms_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1ms_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_8 ((s _let_7) V0m_2E0))) (let ((_let_9 (_let_6 _let_2))) (= (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4)) (_let_3 ((c_2Estate__transformer_2EBIND_2E2 _let_8) ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4))))))))))))))) (= (_let_5 c_2Estate__transformer_2Esequence_2E0) (_let_5 ((c_2Elist_2EFOLDR_2E2 ((s ((tyop_2Emin_2Efun _let_4) ((tyop_2Emin_2Efun _let_3) _let_3))) F0_2E0)) ((s _let_3) (c_2Estate__transformer_2EUNIT_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))))) (forall ((A_27a d) (V0t_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0t_2E0)))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u)) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))) (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2ESURJ_2E3 _let_3) _let_2) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EINJ_2E3 _let_3) _let_2) _let_2))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0c_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0c_2E0))) (= (or (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_2 V0c_2E0) (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 _let_2))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2b_2E0 u) (V3a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3a_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 V2b_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_7 ((s (_let_3 _let_6)) V0f_2E0))) (let ((_let_8 (c_2Ebag_2EITBAG_2E3 _let_7))) (let ((_let_9 ((s A_27a) V1e_2E0))) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_3 V4x_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_3 V5y_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_5)))) (= (_let_1 ((_let_8 (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 _let_9) _let_5))) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_9))) (_let_1 ((_let_8 _let_5) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows__old_2E0 u) (V2rows__new_2E0 u) (V3r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V2rows__new_2E0))) (let ((_let_4 (c_2Elist_2ECONS_2E2 ((s _let_1) V3r_2E0)))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) V0v_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_2 V1rows__old_2E0))) (=> (= (_let_6 (_let_5 _let_7)) (_let_6 (_let_5 _let_3))) (= (_let_6 (_let_5 (_let_2 (_let_4 _let_7)))) (_let_6 (_let_5 (_let_2 (_let_4 _let_3)))))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EDELETE_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 _let_1) _let_1)))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s A_27b) V1h_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27b)))) (= (_let_2 ((c_2Ellist_2ELNTH_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_3 V2t_2E0))))) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27c)))) (let ((_let_2 (_let_1 V5t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27c)))) (= (_let_4 ((c_2Ellist_2ELNTH_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n)))) (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27c) V4h_2E0)) _let_2)))) (_let_4 ((c_2Ellist_2ELNTH_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (= (forall ((V3y_2E0 u)) (let ((_let_1 ((s A_27a) V3y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_4 A_27a)) V1f_2E0)) ((s (_let_4 tyop_2Emin_2Ebool)) V2s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V1f_2E0)) _let_1)))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EEMPTY_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0n))) (= (mono_2Ec_2Epred__set_2Ecount (_let_1 V1m)) ((mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2Ecount V0n)) ((mono_2Ec_2Epred__set_2EIMAGE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1) (mono_2Ec_2Epred__set_2Ecount V1m)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (let ((_let_4 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s A_27a) V1x_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_6) _let_3)))) (= (_let_5 (_let_4 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_6)))) (_let_5 (_let_4 _let_3))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0sp_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2u_2E0))) (let ((_let_4 (_let_2 V0sp_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3)) (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)))))))))) (forall ((V0sp_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 V0sp_2E0))) (let ((_let_7 (_let_2 _let_1))) (= (_let_5 ((c_2Epred__set_2EDIFF_2E2 _let_6) (_let_5 (c_2Epred__set_2EBIGINTER_2E1 _let_4)))) (_let_5 (c_2Epred__set_2EBIGUNION_2E1 (_let_3 ((c_2Epred__set_2EIMAGE_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F0_2E0)) _let_6))) _let_4))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u) (V2x_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2x_27_2E0))) (let ((_let_5 (c_2Ebool_2EIN_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 V1x_2E0))) (let ((_let_8 (c_2Ebool_2EIN_2E2 _let_7))) (let ((_let_9 (c_2Epred__set_2EDELETE_2E2 _let_2))) (= (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_8 (_let_1 (_let_9 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 (_let_9 _let_7)))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_8 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27a) V3v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (forall ((V2v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_2) (_let_1 V0i_2E0)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a)) (c_2Ecombin_2EK_2E1 ((s A_27a) V0i_2E0)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V1P_2E0)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0))) (= (_let_1 ((c_2Elist_2EGENLIST_2E2 _let_3) _let_2)) (_let_1 (((c_2Elist_2EGENLIST__AUX_2E3 _let_3) _let_2) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_5 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 _let_5) _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27a)) ((c_2Epred__set_2ELINV_2E2 _let_5) _let_2))) _let_4) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epair_2ESND_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epair_2ESND_2E0)) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0P_2E0))) (let ((_let_9 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 (_let_10 tyop_2Emin_2Ebool))) (= (_let_4 (c_2Elist_2EdropWhile_2E1 _let_8)) (_let_4 ((c_2Elist_2EsplitAtPki_2E2 ((s (_let_10 _let_6)) (c_2Ecombin_2EC_2E1 ((s (_let_5 _let_11)) ((c_2Ecombin_2Eo_2E2 ((s (_let_9 _let_11)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum))) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s (_let_9 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_8))))))) ((s (_let_2 _let_3)) (c_2Ecombin_2EK_2E1 (_let_4 c_2Ecombin_2EI_2E0)))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2EREST_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3))) _let_3))))))) (= (_let_259 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_259 c_2Eoption_2ESOME_2E0)) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((s A_27a) V2e_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (c_2Epred__set_2EUNION_2E2 (_let_1 V0s_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V0x_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_1 V1s_2E0))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (=> (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2Ecountable_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2Ecount V0n))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral__bit_2EiLOG2 V0n) (mono_2Ec_2Ebit_2ELOG2 ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (= mono_2Ec_2Epred__set_2EPROD__SET (mono_2Ec_2Epred__set_2EPROD__IMAGE_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum)) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V1)))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (not (= (_let_1 V0s_2E0) (_let_1 V1t_2E0))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) _let_3)) _let_2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2c Bool) (V4c_27 Bool)) (= (and V2c V4c_27) ((F0 V2c) V4c_27))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4c_27 Bool) (V5infos_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool V2c))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool V4c_27))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5infos_27))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2c) V4c_27)))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2EpatternMatches_2EREDUNDANT__ROWS__INFOS__DISJ V3infos) V5infos_27)))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1N mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_3)) V0f_2E0)))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_3))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1N) V2n) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))) (= (_let_6 (c_2Epred__set_2EBIGUNION_2E1 (_let_5 (_let_4 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum)))))) (_let_6 (c_2Epred__set_2EBIGUNION_2E1 (_let_5 (_let_4 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount V1N)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27a))) (= (_let_9 (((c_2Epred__set_2ERINV_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2ERINV_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0v0 mono_2Etyop_2Eone_2Eone)) (= (mono_2Ec_2EEncode_2Eencode__unit V0v0) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (= (_let_1 ((c_2Elist_2EFILTER_2E2 _let_3) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (exists ((V2y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2y_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELREPEAT_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELREPEAT_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u) (V3t_2E0 u) (V4u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V4u_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((s (_let_5 A_27c)) V1g_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_5 tyop_2Emin_2Ebool)) V3t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EBIJ_2E3 _let_6) _let_8) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EBIJ_2E3 _let_4) _let_3) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_2 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_4))) _let_3) _let_1))))))))))))) (forall ((A_27a d)) (and (forall ((V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 V3t_2E0)) _let_2))) _let_2)))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) (_let_1 V1t_2E0)))) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2t_2E0))) (let ((_let_6 (c_2Epred__set_2ESUBSET_2E2 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_2 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F0_2E0)) _let_4))) _let_1)) (_let_7 ((c_2Epair_2E_2C_2E2 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_1) _let_1))) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0b_2E0 u) (V1a_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V2P_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_4) tyop_2Emin_2Ebool)))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V0b_2E0))) (let ((_let_8 (_let_6 V1a_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_3) _let_8))) (= _let_8 _let_7)) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_8) _let_7))) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_3)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2Q_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2Q_2E0))) (let ((_let_6 (_let_4 V1P_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (s A_27b))) (= (= (_let_10 ((app_2E2 _let_6) _let_1)) (_let_10 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) F1_2E0)) _let_6))) _let_5))) _let_1))))))))))))))) (=> (forall ((V0i_2E0 u) (V3xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V3xxx)))) _let_2))))) (forall ((V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2Q_2E0))) (let ((_let_5 (_let_3 V1P_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 ((s A_27a) V0i_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_11 (s A_27b))) (=> (= (_let_11 ((app_2E2 _let_5) _let_9)) (_let_11 ((app_2E2 _let_4) _let_9))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s _let_10) ((app_2E2 ((s (_let_1 _let_10)) F0_2E0)) _let_9))) ((s _let_6) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_5))) _let_4))))))))))))))))))))) (= (_let_257 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum)) (_let_257 c_2Emin_2E_3D_2E0)) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0m) (mono_2Ec_2Epred__set_2Ecount V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27a)) (c_2Epred__set_2Eenumerate_2E1 _let_1))) ((s (_let_3 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_2 _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_2))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0R_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 ((c_2Epred__set_2EUNION_2E2 (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_3 (c_2Eset__relation_2Erange_2E1 _let_2)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ewellorder_2Ewellorder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ewellorder_2Ewellfounded_2E1 (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Elinear__order_2E2 _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Ereflexive_2E2 _let_2) _let_4))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)) _let_2))) mono_2Ec_2Enum_2E0) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0)) _let_1))) mono_2Ec_2Enum_2E0)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1P_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0y_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s A_27a) V0y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1P_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_1) (_let_4 (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_5))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0i mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Earithmetic_2ENUMERAL V0i)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiDUB V0i)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2)))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_2))) (_let_1 (c_2Epred__set_2EREST_2E1 _let_2)))) _let_2))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Elist_2EMAP2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (= (_let_81 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Enum_2Enum)) (_let_81 c_2Epred__set_2ECARD_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EFUNSET_2E3 _let_7) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EFUNSET_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V2x_2E0)))) (= (_let_4 ((c_2Epred__set_2ECROSS_2E2 (_let_2 (_let_5 _let_3))) _let_1)) (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 ((c_2Epred__set_2ECROSS_2E2 (_let_2 (_let_5 (_let_2 c_2Epred__set_2EEMPTY_2E0)))) _let_1))) (_let_4 ((c_2Epred__set_2ECROSS_2E2 _let_3) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1f_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 A_27a)) V1f_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_4) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_3) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))) (let ((_let_5 ((s A_27a) V1x_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_2))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2)))) _let_4) (mono_2Ec_2Enum_2ESUC _let_4))))))))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s2_2E0))) (let ((_let_3 (_let_1 V0s1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 ((s (_let_1 A_27b)) V1f_2E0))) (=> (exists ((V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 _let_3) _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0t_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Epred__set_2ESURJ_2E3 ((s (_let_3 A_27b)) V2f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_3) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_3))) _let_2)) _let_2))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)))) (_let_4 (c_2Elist_2EREVERSE_2E1 (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_4 ((c_2Epred__set_2EPREIMAGE_2E2 _let_2) _let_3)) (_let_4 ((c_2Ecombin_2Eo_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0))) (= (_let_1 (((c_2Esemi__ring_2Esemi__ring__SRM_2E3 _let_3) _let_2) (_let_1 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_3)))) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (not (= (_let_2 (c_2Epred__set_2EPOW_2E1 ((s _let_1) V0s_2E0))) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s2_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0s1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_4 (c_2Epred__set_2EPOW_2E1 _let_5))) (_let_4 (c_2Epred__set_2EPOW_2E1 _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2Eequiv__on_2E2 ((s (_let_1 _let_2)) V1R_2E0)) ((s _let_2) V0s_2E0)))) (forall ((V2t1_2E0 u) (V3t2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3t2_2E0))) (let ((_let_5 (_let_3 V2t1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 ((s (_let_1 _let_2)) V1R_2E0)) (_let_3 V0s_2E0))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_7))) (not (= _let_5 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_5) _let_4)))))))))))))))) (forall ((A_27a d) (V0llength__rel_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (and (forall ((V1h_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3t_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V0llength__rel_27_2E0)))) (let ((_let_6 (s _let_4))) (=> ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 _let_3))) V2n) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_6 (_let_5 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) _let_3))))) (mono_2Ec_2Enum_2ESUC V2n)))))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V0llength__rel_27_2E0)) ((s _let_1) c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V4a0_2E0 u) (V5a1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V4a0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5a1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) V0llength__rel_27_2E0)) _let_2))) V5a1)))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows2_2E0 u) (V2rows1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1rows2_2E0))) (let ((_let_4 (_let_2 V2rows1_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 (c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E2 _let_5))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (= (_let_7 (_let_6 _let_4)) (_let_7 (_let_6 _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 _let_5) _let_4) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 _let_3) _let_1))))) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (and (forall ((V0e mono_2Etyop_2Enum_2Enum) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1s) (= (mono_2Ec_2Epred__set_2EMAX__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0e) V1s)) ((mono_2Ec_2Earithmetic_2EMAX V0e) (mono_2Ec_2Epred__set_2EMAX__SET V1s))))) (= (mono_2Ec_2Epred__set_2EMAX__SET mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> Bool Bool)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_3 ((c_2EDecode_2Eenc2dec_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_2 _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29) (V1 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0) V1))) (_let_3 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Elist_2EMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2EMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EPREIMAGE_2E0)) _let_5))) _let_2)))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (=> (forall ((V3P (-> mono_2Etyop_2Estring_2Echar Bool)) (V4l mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V5r mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Estring_2ETOKENS V3P))) (= (((F0 V3P) V4l) V5r) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (mono_2Ec_2Elist_2ENULL_2Emono_2Etyop_2Estring_2Echar V4l)) (_let_1 (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V5r))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V4l) (_let_1 V5r)))))) (and (forall ((V0P (-> mono_2Etyop_2Estring_2Echar Bool))) (= ((mono_2Ec_2Estring_2ETOKENS V0P) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (forall ((V1t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2h mono_2Etyop_2Estring_2Echar) (V3P (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2h) V1t))) (= ((mono_2Ec_2Estring_2ETOKENS V3P) _let_1) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (F0 V3P))) ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V3P) _let_1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)) _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 ((s (_let_2 tyop_2Enum_2Enum)) V0f_2E0)) _let_1)))) V2n))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)) _let_2)))) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))) V2n))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Epred__set_2EITSET_2E3 _let_6) _let_3) (_let_8 (i_mono_2Etyop_2Enum_2Enum X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_4) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epred__set_2EITSET_2E0)) _let_6))) _let_3))) X2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2P_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (= _let_3 _let_2))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V2P_2E0))) (let ((_let_7 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_2) _let_6))))) (or _let_4 (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_6))) (not _let_4))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 c_2Epred__set_2EUNIV_2E0))) (= (= _let_2 _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll_2E0))) (= (= _let_3 (_let_2 c_2Ellist_2ELNIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) _let_3)))))))) (=> (forall ((V1ll_2E0 u) (V2f_2E0 u) (V4n_2E0 u) (V5x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F2_2E0)) ((s _let_3) V1ll_2E0)))) ((s _let_2) V2f_2E0)))) ((s A_27b) V4n_2E0)))) ((s A_27a) V5x_2E0)))) (forall ((V6h_2E0 u) (V7t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V7t_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V6h_2E0))) (=> (= (_let_1 V1ll_2E0) (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_2))) (and (= _let_4 (_let_3 V5x_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2ELPREFIX_2E2 _let_2) (_let_1 ((c_2Ellist_2ELUNFOLD_2E2 ((s ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) V2f_2E0)) ((s A_27b) V4n_2E0))))))))))))))))))))) (=> (forall ((V1ll_2E0 u) (V2f_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 ((s _let_5) V1ll_2E0))) (let ((_let_7 (_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 ((s _let_1) V3v_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_14 (_let_8 _let_13))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F1_2E0)) _let_6))) _let_4))) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Epair_2Epair__CASE_2E2 _let_11) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F2_2E0)) _let_6))) _let_4))))))))))))))))))))) (forall ((V0n_2E0 u) (V1ll_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1ll_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 ((s A_27b) V0n_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ellist_2ELPREFIX_2E2 _let_7) (_let_6 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_12))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_2) ((app_2E2 _let_4) _let_12))) (_let_11 ((app_2E2 ((s (_let_10 tyop_2Emin_2Ebool)) F0_2E0)) _let_7))) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) F1_2E0)) _let_7))) _let_4))))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1b_2E0))) (let ((_let_5 (_let_3 V0c_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 _let_5))) (let ((_let_7 (_let_3 V2a_2E0))) (let ((_let_8 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (c_2Erelation_2ETC_2E3 ((s (_let_9 (_let_9 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_8))))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Erelation_2EWF_2E1 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Erelation_2Etransitive_2E1 _let_8)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Ebag_2EFINITE__BAG_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 _let_7) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((_let_10 (_let_3 (_let_6 _let_7))) (_let_3 (_let_6 _let_4))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 A_27a)) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 (s _let_6))) (= (_let_9 ((c_2Epred__set_2EFUNSET_2E2 _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2Epred__set_2EFUNSET_2E0)) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2a mono_2Etyop_2Enum_2Enum) (V3e_2E0 u)) (let ((_let_1 ((s A_27a) V3e_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_4))) (_let_5 (i_mono_2Etyop_2Enum_2Enum V2a))))) _let_1))) ((mono_2Ec_2Earithmetic_2E_2B V2a) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3))) (= (mono_2Ec_2Elist_2ESUM (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))) (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V2s_2E0))) (let ((_let_5 ((s A_27a) V1x_2E0))) (let ((_let_6 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_7 (c_2Epred__set_2EINJ_2E3 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_4) _let_1))) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V0f_2E0)))) (let ((_let_6 (s A_27b))) (=> (and (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_4 tyop_2Emin_2Ebool)) V2s_2E0))))) (= _let_3 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_6) _let_5))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 _let_1))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2ESING_2E1 _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0x_2E0 u) (V1B_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EBIGINTER_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) V1B_2E0)) ((s A_27a) V0x_2E0)))) (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1B_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))) _let_2))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (= (_let_256 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum)) (_let_256 c_2Epred__set_2EUNION_2E0)) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (= _let_2 _let_3) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (((c_2Ebag_2EBAG__FILTER_2E3 _let_7) _let_5) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Ebag_2EBAG__FILTER_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((A_27a d)) (and (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) (_let_1 c_2Epred__set_2EEMPTY_2E0))) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) _let_2)) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (= (_let_1 (((c_2Epred__set_2ELINV_2E3 _let_4) _let_5) ((s A_27b) ((app_2E2 _let_4) _let_2)))) _let_2))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0b1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ebag_2EFINITE__BAG_2E1 _let_2)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2))))))))))) (= (_let_256 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EINTER_2Emono_2Etyop_2Enum_2Enum)) (_let_256 c_2Epred__set_2EINTER_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2ESURJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2ESURJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2Ecount V0n)) V0n)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 (((c_2Epred__set_2ELINV_2E3 _let_4) _let_3) _let_1)) (_let_5 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (((c_2Epred__set_2ELINV__OPT_2E3 _let_4) _let_3) _let_1))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l_27_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_27_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_1))) (= (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_3))) _let_4)) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun A_27a) _let_1))) F0_2E0)) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_2) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V0R_2E0))) (= (_let_3 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_4) ((s _let_2) c_2Epred__set_2EUNIV_2E0))) _let_4)))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (forall ((V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V3l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V1Q_2E0)) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V2s_2E0))) (let ((_let_6 ((s A_27a) V1e_2E0))) (let ((_let_7 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_8 (c_2Epred__set_2EBIJ_2E3 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((s A_27b) ((app_2E2 _let_7) _let_6)))) (let ((_let_11 (_let_8 _let_5))) (let ((_let_12 (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_6) _let_5))))) (= (or (and _let_12 (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 _let_2)))) (and (not _let_12) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_11 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_10))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2EIN_2E2 _let_10) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5))) _let_2))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1))) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (= (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) F0_2E0)) _let_3)) _let_3))))))) (forall ((A_27a d) (X0 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2EDISJOINT_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (= (_let_2 ((c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_1 A_27a)) (c_2Ecombin_2EK_2E1 _let_4))) _let_3)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (_let_2 c_2Epred__set_2EUNIV_2E0)) (_let_2 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_3)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1l)) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) mono_2Ec_2Enum_2E0))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__SUM ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum V1x) V0b)) V2a) ((mono_2Ec_2Earithmetic_2E_2B V1x) ((mono_2Ec_2Ebag_2EBAG__GEN__SUM V0b) V2a)))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (= (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_2) _let_3))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) _let_5)))) (= _let_3 _let_2)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eset__relation_2Eantisym_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2EMOD V2n) (_let_1 (mono_2Ec_2Enum_2ESUC V0h)))) (_let_1 V1l))))) (and (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT__REVERSE mono_2Ec_2Enum_2E0) V0x) mono_2Ec_2Enum_2E0)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT__REVERSE (mono_2Ec_2Enum_2ESUC V1n)) V2x) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Ebit_2EBIT__REVERSE V1n) V2x)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT V1n) V2x)) mono_2Ec_2Enum_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2s mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) V2s) (not ((mono_2Ec_2Ebit_2EBIT V0n) ((mono_2Ec_2Earithmetic_2E_2A V1a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2s)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0b Bool) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2ESBIT V0b))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1m) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1m) V2n)) ((mono_2Ec_2Earithmetic_2EDIV (_let_1 V1m)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2n)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2op (-> Bool Bool Bool)) (V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Ebit_2EBIT V0x))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) (=> (not ((V2op (_let_2 V3a)) (_let_2 V4b))) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV ((((mono_2Ec_2Ebit_2EBITWISE V1n) V2op) V3a) V4b)) ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0x))) _let_1) mono_2Ec_2Enum_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Earithmetic_2E_2A _let_1) ((mono_2Ec_2Earithmetic_2EDIV V0n) _let_1)) ((mono_2Ec_2Earithmetic_2E_2D V0n) ((mono_2Ec_2Earithmetic_2EMOD V0n) _let_1))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2ESUFFIX_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Erich__list_2ESUFFIX_2E0)) _let_5))) _let_3)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1op (-> Bool Bool Bool)) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= ((((mono_2Ec_2Ebit_2EBITWISE (mono_2Ec_2Enum_2ESUC V0n)) V1op) V2a) V3b) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A _let_1) ((((mono_2Ec_2Ebit_2EBITWISE V0n) V1op) ((mono_2Ec_2Earithmetic_2EDIV V2a) _let_1)) ((mono_2Ec_2Earithmetic_2EDIV V3b) _let_1)))) ((mono_2Ec_2Ebit_2ESBIT ((V1op (mono_2Ec_2Earithmetic_2EODD V2a)) (mono_2Ec_2Earithmetic_2EODD V3b))) mono_2Ec_2Enum_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s (tyop_2Elist_2Elist _let_1)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V1)))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2ESLICE V0h) V1l) V2n) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Ebit_2EMOD__2EXP (mono_2Ec_2Enum_2ESUC V0h)) V2n)) ((mono_2Ec_2Ebit_2EMOD__2EXP V1l) V2n)))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) V0x_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_4 ((c_2Erich__list_2EREPLICATE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum _let_2))) _let_1)) (_let_4 ((c_2Elist_2ECONS_2E2 _let_1) (_let_4 ((c_2Erich__list_2EREPLICATE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_1)))))))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V3n))))) _let_1)) (_let_3 ((c_2Elist_2ECONS_2E2 _let_1) (_let_3 ((c_2Erich__list_2EREPLICATE_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n))))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 _let_1))) mono_2Ec_2Ebool_2ET))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (=> (not (= V0m mono_2Ec_2Enum_2E0)) (exists ((V1p mono_2Etyop_2Enum_2Enum)) (= V0m (mono_2Ec_2Enum_2ESUC V1p))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Ereflexive_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Ereflexive_2E0)) _let_4))) _let_2))))))))))) (= mono_2Ec_2Ebit_2ELOG2 (mono_2Ec_2Elogroot_2ELOG _let_19)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT V0b) V1n) (= (((mono_2Ec_2Ebit_2ESLICE V0b) V0b) V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0b)))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBITS V0h) mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Earithmetic_2EMOD V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enum_2ESUC V0h))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= (((mono_2Ec_2Ebit_2EBITS V0b) V0b) V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Ebit_2EBIT V0b) V1n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (and (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4op (-> Bool Bool Bool)) (V5x mono_2Etyop_2Enum_2Enum) (V6y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V3n))) (= ((((mono_2Ec_2Ebit_2EBITWISE (mono_2Ec_2Enum_2ESUC V3n)) V4op) V5x) V6y) ((mono_2Ec_2Earithmetic_2E_2B ((((mono_2Ec_2Ebit_2EBITWISE V3n) V4op) V5x) V6y)) ((mono_2Ec_2Ebit_2ESBIT ((V4op (_let_1 V5x)) (_let_1 V6y))) V3n))))) (forall ((V0op (-> Bool Bool Bool)) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (= ((((mono_2Ec_2Ebit_2EBITWISE mono_2Ec_2Enum_2E0) V0op) V1x) V2y) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0h) V1l) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enum_2ESUC V0h)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Ecombin_2EC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2EC_2E0)) _let_4)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT (mono_2Ec_2Enum_2ESUC V0n)))) (= (= (_let_1 V1a) (_let_1 V2b)) (((F0 V0n) V1a) V2b)))) (=> (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (= ((((F1 F0) V0n) V1a) V2b) (not (((F0 V0n) V1a) V2b)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0n) mono_2Ec_2Enum_2E0))) (let ((_let_2 (mono_2Ec_2Ebit_2EBIT (mono_2Ec_2Enum_2ESUC V0n)))) (= (_let_2 ((mono_2Ec_2Earithmetic_2E_2B V1a) V2b)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (_let_2 ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V1a)) (_let_1 V2b)))) (((F0 V0n) V1a) V2b)) ((((F1 F0) V0n) V1a) V2b))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2op (-> Bool Bool Bool)) (V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Ebit_2EBIT V0x))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) (=> ((V2op (_let_2 V3a)) (_let_2 V4b)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV ((((mono_2Ec_2Ebit_2EBITWISE V1n) V2op) V3a) V4b)) ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0x))) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (((mono_2Ec_2Ebit_2EBITS V0n) V0n) V1a))) (= (not (= _let_1 mono_2Ec_2Enum_2E0)) (= _let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V0n) (_let_1 (mono_2Ec_2Enum_2ESUC V1p))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1p)) V0n)) (= (mono_2Ec_2Ebit_2ELOG2 V0n) V1p)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0b Bool) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ESBIT V0b) V1n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0b) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1n)) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (= V1k ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EDIV V1k) _let_1)) _let_1)) ((mono_2Ec_2Earithmetic_2EMOD V1k) _let_1))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2EBAG__ALL__DISTINCT_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0n) mono_2Ec_2Enum_2E0))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V0n))) (let ((_let_3 ((mono_2Ec_2Ebit_2EBITS _let_2) _let_2))) (= (_let_3 ((mono_2Ec_2Earithmetic_2E_2B V1a) V2b)) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2B (_let_3 V1a)) (_let_3 V2b))) (_let_3 ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V1a)) (_let_1 V2b))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((V0 (-> (-> Bool Bool) Bool Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderlt_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EMOD V1k) _let_1)) _let_1))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2ESLICE V0h))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V1m))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) V0h) ((mono_2Ec_2Earithmetic_2E_3C_3D V2l) V1m)) (= ((mono_2Ec_2Earithmetic_2E_2B ((_let_1 _let_2) V3n)) (((mono_2Ec_2Ebit_2ESLICE V1m) V2l) V3n)) ((_let_1 V2l) V3n)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1l) V0h) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) ((mono_2Ec_2Earithmetic_2E_2A V2a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1l))) (((mono_2Ec_2Ebit_2EBITS ((mono_2Ec_2Earithmetic_2E_2D V0h) V1l)) mono_2Ec_2Enum_2E0) V2a)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1op (-> Bool Bool Bool)) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C ((((mono_2Ec_2Ebit_2EBITWISE V0n) V1op) V2a) V3b)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (((mono_2Ec_2Erich__list_2ESEG_2Emono_2Etyop_2Estring_2Echar V0) V1) V2))) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_2 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V2)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0wl mono_2Etyop_2Enum_2Enum) (V1op (-> Bool Bool Bool)) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITWISE (mono_2Ec_2Enum_2ESUC V0wl)) V1op))) (let ((_let_2 ((mono_2Ec_2Ebit_2EBITS V0wl) mono_2Ec_2Enum_2E0))) (= ((_let_1 (_let_2 V2a)) (_let_2 V3b)) ((_let_1 V2a) V3b))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1b))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (and (= ((mono_2Ec_2Earithmetic_2EMOD V0a) _let_1) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V0a)) (= ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EDIV V0a) _let_1)) _let_2) ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2D V0a) _let_2)) _let_1)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum) (V3a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V2l) V0n))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V1h) (= ((mono_2Ec_2Ebit_2EBIT V0n) (((mono_2Ec_2Ebit_2EBITS V1h) V2l) V3a)) ((mono_2Ec_2Ebit_2EBIT _let_1) V3a))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EMMAP_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EMMAP_2E0)) _let_4)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ETIMES__2EXP V0x) V1n) ((mono_2Ec_2Earithmetic_2E_2A V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBITV V1n) V0b) ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT V0b) V1n)) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (= (= (((mono_2Ec_2Ebit_2EBITS V0n) V0n) V1a) mono_2Ec_2Enum_2E0) (not ((mono_2Ec_2Ebit_2EBIT V0n) V1a)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ewellorder_2Efl_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ewellorder_2Efl_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) ((s A_27a) V0x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Ebit_2EBIT (mono_2Ec_2Ebit_2ELOG2 V0n)) V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2s mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2B V0n) V2s)) ((mono_2Ec_2Earithmetic_2E_2A V1a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2s))) ((mono_2Ec_2Ebit_2EBIT V0n) V1a))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Elift__sum_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EEncode_2Elift__sum_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1b) V3y) ((mono_2Ec_2Eprim__rec_2E_3C V0a) V2x)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2A V0a) V1b)) ((mono_2Ec_2Earithmetic_2E_2A V2x) V3y)))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))))))) (forall ((V0i mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0i)) (not ((mono_2Ec_2Ebit_2EBIT V0i) V1n)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__option_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Eencode__option_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2ESLICE V0n) V0n))) (let ((_let_2 (mono_2Ec_2Ebit_2EBIT V0n))) (= (= (_let_2 V1a) (_let_2 V2b)) (= (_let_1 V1a) (_let_1 V2b)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27b d) (A_27c d) (A_27s d) (V0f_2E0 u) (V1m_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 ((s (_let_2 _let_1)) V1m_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27c) A_27s))) (let ((_let_5 (_let_2 _let_4))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V0f_2E0))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Estate__transformer_2EEXT_2E2 _let_6) _let_3)) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (c_2Epair_2EUNCURRY_2E1 _let_6))) _let_3))))))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Epartial__order_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 (_let_1 (c_2Eset__relation_2Estrict_2E1 _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (((mono_2Ec_2Ebit_2EBITS V0n) V0n) V1a))) (= (= _let_1 mono_2Ec_2Enum_2E0) (not (= _let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0a) V1b) ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V0a)) (_let_1 V1b))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EMOD V0n))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2l) V1h) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_2 (_let_1 V2l))) (_let_2 (_let_1 (mono_2Ec_2Enum_2ESUC V1h)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) (_let_5 A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V3a mono_2Etyop_2Enum_2Enum) (V0n mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EMOD V3a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n)) mono_2Ec_2Enum_2E0) ((F0 V3a) V0n))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum) (V3a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (_let_1 V1m))) (let ((_let_3 (mono_2Ec_2Earithmetic_2E_2D _let_2))) (let ((_let_4 ((mono_2Ec_2Earithmetic_2E_2B V2i) V0n))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3a) _let_2) ((mono_2Ec_2Eprim__rec_2E_3C _let_4) V1m)) (= ((mono_2Ec_2Ebit_2EBIT V2i) (_let_3 ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EDIV V3a) (_let_1 V0n))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((F0 V3a) V0n)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_2))) ((mono_2Ec_2Ebit_2EBIT _let_4) (_let_3 ((mono_2Ec_2Earithmetic_2EMOD V3a) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (_let_6 ((c_2Estate__transformer_2EMCOMP_2E2 _let_7) _let_4)) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Estate__transformer_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT V1x) V2n)) ((mono_2Ec_2Earithmetic_2E_2B V1x) V0y)) ((mono_2Ec_2Earithmetic_2E_2A (((mono_2Ec_2Ebit_2ESLICE V1x) V1x) V2n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0y)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2ESLICE V0h) V1l))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V3y) V1l) ((mono_2Ec_2Earithmetic_2E_3C_3D V0h) V2x)) (= (_let_1 (((mono_2Ec_2Ebit_2ESLICE V2x) V3y) V4n)) (_let_1 V4n))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0s1_2E0 u) (V1s2_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (_let_1 V1s2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 V0s1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 (_let_5 A_27a))))) (= (= _let_4 _let_2) (and (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_4)) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 _let_2))) (= (_let_6 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_4)) (_let_6 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 _let_2))) (= (_let_6 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_4)) (_let_6 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 _let_2))) (= (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_4)) (_let_3 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 _let_2)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (= (_let_2 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0)) _let_3)) _let_3))))) (and (forall ((V2y mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V3x) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V3x) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2y)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Ebit_2ELOG2 V3x)) V2y)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x)) V1y) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (mono_2Ec_2Ebit_2ELOG2 V1y))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (= (_let_254 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Emin_2Ebool)) (_let_254 c_2EDecode_2Eenc2dec_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (= (exists ((V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) V0l_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Efl_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0l_2E0)) ((s A_27a) V1x_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Ebit_2EBIT V0b) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0b))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2)) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> (forall ((V2i mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2i) V0n) (not ((mono_2Ec_2Ebit_2EBIT V2i) V1m)))) (= (((mono_2Ec_2Ebit_2EBITS V0n) mono_2Ec_2Enum_2E0) V1m) mono_2Ec_2Enum_2E0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (F3_2E0 u) (F1_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V12x_2E0 u) (V13y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F3_2E0)) ((s _let_2) V0f_2E0)))) (_let_1 V12x_2E0)))) (_let_1 V13y_2E0)))) (exists ((V14m mono_2Etyop_2Enum_2Enum) (V15n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V14m) V15n) (= (_let_3 (_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V15n)))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_1 V13y_2E0)))) (= (_let_3 (_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V14m)))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_1 V12x_2E0)))))))))))))))))) (=> (forall ((V0f_2E0 u) (V12x_2E0 u) (V13y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V13y_2E0))) (let ((_let_3 (_let_1 V12x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_10) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_6 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_9 _let_14)) F1_2E0)) _let_5))) _let_3))) _let_2)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F3_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))))) (=> (forall ((V0f_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F2_2E0)) ((s _let_2) V0f_2E0)))) (_let_1 V8x_2E0)))) (_let_1 V9y_2E0)))) (exists ((V10m mono_2Etyop_2Enum_2Enum) (V11n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V10m) V11n) (= (_let_3 (_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V10m)))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_1 V8x_2E0)))) (= (_let_3 (_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V11n)))) (_let_3 (c_2Eoption_2ESOME_2E1 (_let_1 V9y_2E0)))))))))))))))))) (=> (forall ((V0f_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (_let_1 V8x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_11 ((tyop_2Epair_2Eprod _let_10) tyop_2Emin_2Ebool))) (let ((_let_12 (s _let_11))) (let ((_let_13 (_let_6 _let_11))) (let ((_let_14 (_let_6 _let_13))) (= (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_9 _let_14)) F0_2E0)) _let_5))) _let_3))) _let_2)) (_let_12 ((c_2Epair_2E_2C_2E2 ((s _let_10) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_5))) _let_3))) _let_2)))))))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 (_let_1 _let_6)))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_3) _let_7)))) (let ((_let_9 (s _let_7))) (let ((_let_10 (tyop_2Emin_2Efun _let_5))) (let ((_let_11 (s (_let_10 _let_6)))) (let ((_let_12 (s (_let_10 tyop_2Emin_2Ebool)))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)))) (let ((_let_4 (s _let_2))) (let ((_let_5 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3m)))))) (=> (and (not (= _let_5 (_let_4 c_2Eoption_2ENONE_2E0))) (= _let_5 (_let_4 (_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))))) (= V3m V2n)))))))) (forall ((V6m mono_2Etyop_2Enum_2Enum) (V7x_2E0 u)) (let ((_let_1 ((s A_27a) V7x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (=> (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6m)))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))))))) (forall ((V4x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V4x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (exists ((V5m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5m)))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) V4x_2E0)))))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Eset__relation_2Elinear__order_2E2 (_let_12 (c_2Epred__set_2EGSPEC_2E1 (_let_11 (c_2Epair_2EUNCURRY_2E1 (_let_9 ((app_2E2 (_let_8 F0_2E0)) _let_4))))))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Eset__relation_2Efinite__prefixes_2E2 (_let_12 (c_2Epred__set_2EGSPEC_2E1 (_let_11 (c_2Epair_2EUNCURRY_2E1 (_let_9 ((app_2E2 (_let_8 F1_2E0)) _let_4))))))) _let_2)))))))))))))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT V0x) V1n)) V0x) (((mono_2Ec_2Ebit_2ESLICE V0x) V0x) V1n))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBITS V0h))) (= ((mono_2Ec_2Earithmetic_2EDIV ((_let_1 V1l) V2x)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V3n)) ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1l) V3n)) V2x)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum V1x) V0b)) V2a) ((mono_2Ec_2Earithmetic_2E_2A V1x) ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) V2a)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) (_let_1 (mono_2Ec_2Enum_2ESUC V0h))) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) ((mono_2Ec_2Earithmetic_2EDIV V2n) (_let_1 V1l)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1b) V0a) (_let_1 V1b)) (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V0a) V1b))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (exists ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l1_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0n) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V3l2_2E0)))))))))) (forall ((F0 (-> Bool Bool Bool))) (=> (forall ((V3x Bool) (V4y Bool)) (= ((F0 V3x) V4y) (not V3x))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0n))) (= ((((mono_2Ec_2Ebit_2EBITWISE _let_1) F0) V1a) V2b) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) _let_1)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (((mono_2Ec_2Ebit_2EBITS V0n) mono_2Ec_2Enum_2E0) V1a))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) _let_2))) (or (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (_let_1 V1l_2E0))) (= (_let_1 ((c_2Elist_2ESNOC_2E2 _let_2) _let_3)) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0b) (forall ((V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Ecombin_2EC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2EMOD) V0b))) V1l) (= ((mono_2Ec_2Enumposrep_2El2n V0b) V1l) mono_2Ec_2Enum_2E0))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (not ((mono_2Ec_2Ebit_2EBIT V0b) V1n)) (= (((mono_2Ec_2Ebit_2ESLICE V0b) V0b) V1n) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0h) V1l))) (= (_let_1 (((mono_2Ec_2Ebit_2ESLICE V0h) V1l) V2n)) (_let_1 V2n)))) (forall ((A_27a d)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)))) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) (_let_1 V1t_2E0))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ecombin_2ECOMM_2E1 _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ecombin_2EASSOC_2E1 _let_2))) (forall ((V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((c_2Elist_2EFOLDL_2E3 ((s (_let_4 (_let_4 A_27a))) V0f_2E0)) (_let_3 V1e_2E0)))) (= (_let_3 (_let_5 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (_let_5 _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT V0n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1m)) (= V1m V0n))) (forall ((A_27a d) (A_27b d) (A_27s d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27s) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2EreaderMonad_2EBIND_2E3 _let_7) _let_5) _let_1)) (_let_9 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2EreaderMonad_2EBIND_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0h) V1l))) (= (= (_let_1 V2a) (_let_1 V3b)) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V4x))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1l) V4x) ((mono_2Ec_2Earithmetic_2E_3C_3D V4x) V0h)) (= (_let_1 V2a) (_let_1 V3b)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V0w_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V1x_2E0))) (let ((_let_8 (_let_6 V2y_2E0))) (let ((_let_9 (c_2Epair_2E_2C_2E2 _let_8))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (tyop_2Emin_2Efun A_27a))) (let ((_let_13 (_let_12 _let_10))) (let ((_let_14 ((tyop_2Emin_2Efun _let_1) _let_13))) (= (_let_11 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_12 _let_14)) F0_2E0)) _let_7))) _let_2))) _let_8)) (_let_11 (_let_9 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_4) (_let_9 _let_7))) (_let_5 (c_2Eset__relation_2Estrict_2E1 (_let_5 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))))))))))) (forall ((V0w_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 ((s A_27a) V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s (_let_4 tyop_2Emin_2Ebool)))) (= (_let_7 ((c_2Ewellorder_2Eiseg_2E2 _let_2) _let_3)) (_let_7 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) F0_2E0)) _let_3))) _let_2))))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Erich__list_2ELASTN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (not (V1b V2t)) ((F0 V1b) V2t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F0 V1b)) V0t0) (and (forall ((V3a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V3a) V1b) V0t0) mono_2Ec_2Ebool_2ET)) (forall ((V4a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V4a) V1b) V0t0) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V4a) V0t0))) (forall ((V5a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V5a) V1b) V0t0) mono_2Ec_2Ebool_2ET)) (forall ((V8a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V8a) V1b) V0t0) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V8a) V0t0))) (forall ((V7a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V7a) V1b) V0t0) mono_2Ec_2Ebool_2EF)) (forall ((V6a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V6a) V1b) V0t0) mono_2Ec_2Ebool_2EF))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0h))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1l) _let_1) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT _let_1) V2n)) ((mono_2Ec_2Earithmetic_2E_2D _let_1) V1l))) (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n)) (((mono_2Ec_2Ebit_2EBITS _let_1) V1l) V2n))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_4 ((c_2Erelation_2EWFREC_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1m_27 mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum) (V3l mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2ESLICE V0h))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V3l) V2m) (= V1m_27 ((mono_2Ec_2Earithmetic_2E_2B V2m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Eprim__rec_2E_3C V2m) V0h)) (= ((mono_2Ec_2Earithmetic_2E_2B ((_let_1 V1m_27) V4n)) (((mono_2Ec_2Ebit_2ESLICE V2m) V3l) V4n)) ((_let_1 V3l) V4n))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n)) V2n)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) ((mono_2Ec_2Ebit_2EMOD__2EXP ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0h)) V1l)) ((mono_2Ec_2Ebit_2EDIV__2EXP V1l) V2n)))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EreaderMonad_2EUNIT_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2EreaderMonad_2EUNIT_2E0)) _let_1))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0y_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_1 _let_5))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) F0_2E0)) _let_3))) _let_4)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) _let_3))))))))))))) (forall ((V0y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0y_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) F0_2E0)) _let_4)))) _let_4))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2op (-> Bool Bool Bool)) (V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V0x))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) (= (_let_1 ((((mono_2Ec_2Ebit_2EBITWISE V1n) V2op) V3a) V4b)) ((V2op (_let_1 V3a)) (_let_1 V4b)))))) (forall ((A_27a d) (V0P0_2E0 u) (V1P1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P1_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0)))) (forall ((V4t_2E0 u) (V5l_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5l_2E0))) (let ((_let_5 ((s _let_1) V4t_2E0))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V1P1_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P0_2E0)) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)))))))))))))) (forall ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P1_2E0)) ((s _let_1) V2l_2E0)))) (forall ((V3a_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P0_2E0)) ((s _let_1) ((c_2EEncode_2ENode_2E2 ((s A_27a) V3a_2E0)) ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0)))))))))))) (and (forall ((V6t_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P0_2E0)) ((s _let_1) V6t_2E0)))))) (forall ((V7l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P1_2E0)) ((s _let_1) V7l_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (=> (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (= ((mono_2Ec_2Enumposrep_2El2n V0b) V1l) mono_2Ec_2Enum_2E0) ((F0 V0b) V1l))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 ((mono_2Ec_2Enumposrep_2El2n V0b) V1l))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) V1l)) (= ((mono_2Ec_2Enumposrep_2En2l V0b) _let_1) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((F0 V0b) V1l)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Elist_2ETAKE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Elogroot_2ELOG V0b) _let_1))) V1l)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0r) V1n) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2B V1n) V0r)) V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2ESLICE V1h) mono_2Ec_2Enum_2E0) V0n) (((mono_2Ec_2Ebit_2EBITS V1h) mono_2Ec_2Enum_2E0) V0n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0i mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Ebit_2ELOG2 V1n)) V0i) (not ((mono_2Ec_2Ebit_2EBIT V0i) V1n)))) (= (_let_251 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epred__set_2EDISJOINT_2Emono_2Etyop_2Enum_2Enum)) (_let_251 c_2Epred__set_2EDISJOINT_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0a)) V0a) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2EMOD V2a) _let_1))) (let ((_let_3 (mono_2Ec_2Ebit_2EBIT V1i))) (let ((_let_4 (= _let_2 mono_2Ec_2Enum_2E0))) (= (or (and (= V1i V0n) _let_4) (and (not _let_4) ((mono_2Ec_2Eprim__rec_2E_3C V1i) V0n) (not (_let_3 ((mono_2Ec_2Earithmetic_2E_2D _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (_let_3 ((mono_2Ec_2Earithmetic_2E_2D _let_1) _let_2)))))))) (forall ((V0s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (= V1s1 V0s2) (= (mono_2Ec_2Estring_2EEXPLODE V1s1) (mono_2Ec_2Estring_2EEXPLODE V0s2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1h2 mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0h) V1h2) (= (((mono_2Ec_2Ebit_2EBITS V1h2) V2l) (((mono_2Ec_2Ebit_2ESLICE V0h) V2l) V3n)) (((mono_2Ec_2Ebit_2EBITS V0h) V2l) V3n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u) (V2t_2E0 u)) (= (forall ((V3y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V3y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (exists ((V4x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V1f_2E0)) _let_2)) (_let_1 V3y_2E0))))))))) (exists ((V5g_2E0 u)) (forall ((V6y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V6y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s A_27a) ((app_2E2 ((s (_let_4 A_27a)) V5g_2E0)) _let_3)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) V2t_2E0)))) (and (= (_let_2 ((app_2E2 ((s (_let_1 A_27b)) V1f_2E0)) _let_5)) _let_3) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself (tyop_2Efcp_2Ebit1 A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__EVERY_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) ((s (_let_1 tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)))))) (forall ((V1P_2E0 u) (V2e_2E0 u) (V3b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V3b_2E0))) (let ((_let_4 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__EVERY_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s A_27b) V2e_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 _let_7) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_4) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EMOD__2EXP V0n))) (= (((mono_2Ec_2Ebit_2EMOD__2EXP__EQ V0n) V1a) V2b) (= (_let_1 V1a) (_let_1 V2b))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0A_2E0 u) (V1B_2E0 u) (V2C_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1B_2E0))) (let ((_let_3 (_let_1 V2C_2E0))) (let ((_let_4 (_let_1 V0A_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_3)))) (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))) _let_2))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Ebit_2EBIT V0b) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27a)) V1ll_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27b)) ((c_2Ellist_2ELMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ellist_2ELFINITE_2E1 _let_1))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EMOD V0a) V1b)) V0a))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (exists ((V1cs mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= V0s (mono_2Ec_2Estring_2EIMPLODE V1cs)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0h) ((mono_2Ec_2Earithmetic_2E_2B V1l) V2x)) (not ((mono_2Ec_2Ebit_2EBIT V2x) (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V3n))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EODD V0n) (= ((mono_2Ec_2Earithmetic_2EMOD V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2ELASTN_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Erich__list_2ELASTN_2E0)) _let_4))) _let_3))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (not (= V1n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0b))) (exists ((V2i mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Ebit_2EBIT V2i) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V2i) V0b))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x))) (= ((mono_2Ec_2Ebit_2EDIVMOD__2EXP V0x) V1n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2EDIV V1n) _let_1)) ((mono_2Ec_2Earithmetic_2EMOD V1n) _let_1))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (not (= V0a V1b)) (not ((mono_2Ec_2Ebit_2EBIT V0a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1b))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not (= ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= ((((F0 V0l) V2n) V1h) V3m) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2D V0l) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V2n)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V1h)) (_let_1 V0l))) V3m)) V3m)))) (forall ((V0l mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2ESIGN__EXTEND V0l) V1h) V2n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (((F0 V0l) V2n) V1h)) ((mono_2Ec_2Earithmetic_2EMOD V2n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0l))))))) (= (_let_250 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_250 c_2Eoption_2ESOME_2E0)) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V0a)) (_let_1 V1b))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun _let_1) _let_4)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((s _let_3) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_9 (s _let_4))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_6)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_6))))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0h) mono_2Ec_2Enum_2E0))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A (_let_1 V1a)) (_let_1 V2b))) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1a) V2b))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((V0b Bool) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2ESBIT V0b))) (= ((mono_2Ec_2Earithmetic_2E_2A (_let_1 V2n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1m)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V2n) V1m))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2s mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2s) V0n) (= ((mono_2Ec_2Ebit_2EBIT V0n) ((mono_2Ec_2Earithmetic_2E_2A V1a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2s))) ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2D V0n) V2s)) V1a)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0d_2E0 u) (V1x_2E0 u) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_2))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V0d_2E0))) (let ((_let_8 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_8))) (let ((_let_10 (s _let_2))) (let ((_let_11 (s _let_4))) (= (= (_let_11 ((app_2E2 _let_7) (_let_10 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2l)))) (_let_11 (c_2Eoption_2ESOME_2E1 ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_1) (_let_10 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_1))) V2l)))))))))))))) (forall ((V0d_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2))))) (let ((_let_5 ((s _let_4) V0d_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s _let_2) ((c_2EDecode_2Edec2enc_2E2 _let_5) _let_1))) (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_1))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1j mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V1j))) (= ((mono_2Ec_2Earithmetic_2EMOD (_let_1 ((mono_2Ec_2Earithmetic_2EMOD V2k) V0n))) V0n) ((mono_2Ec_2Earithmetic_2EMOD (_let_1 V2k)) V0n)))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V2x_2E0)))) (= (= (_let_1 (_let_4 _let_3)) (_let_1 (_let_4 _let_2))) (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EindexedLists_2ELIST__RELi_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EindexedLists_2ELIST__RELi_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EMOD__2EXP__MAX V0n) V1a) (= ((mono_2Ec_2Ebit_2EMOD__2EXP V0n) V1a) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_3 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c))))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27c)))))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0h))) (= (((mono_2Ec_2Ebit_2EBITS _let_1) V1l) V2n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V1l)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Ebit_2ESBIT ((mono_2Ec_2Ebit_2EBIT _let_1) V2n)) ((mono_2Ec_2Earithmetic_2E_2D _let_1) V1l))) (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 (c_2Epair_2ESND_2E1 _let_3))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2ESND_2E0)) _let_3))))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (V1P V0n) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V0n) (not (V1P V2m))))) (= (mono_2Ec_2Ewhile_2ELEAST V1P) V0n))) (= (mono_2Ec_2Ebit_2EBIT mono_2Ec_2Enum_2E0) mono_2Ec_2Earithmetic_2EODD) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V0a) V1b))) (_let_1 V0a)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) (= ((mono_2Ec_2Ebit_2EBIT V0x) ((mono_2Ec_2Ebit_2EBIT__REVERSE V1n) V2a)) ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2D V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V0x)) V2a)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1b) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (_let_1 V1b) ((mono_2Ec_2Earithmetic_2E_2A V2p) (_let_1 V0a))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT mono_2Ec_2Enum_2E0))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) (not (= (_let_1 V0m) (_let_1 V1n)))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardgt_2E2 _let_2) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT V0n) ((mono_2Ec_2Earithmetic_2EDIV V1i) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Ebit_2EBIT (mono_2Ec_2Enum_2ESUC V0n)) V1i))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) V2f_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27c)))) (= (_let_4 (((c_2EindexedLists_2EMAP2i_2E3 _let_3) _let_2) _let_1)) (_let_4 ((((c_2EindexedLists_2EMAP2ia_2E4 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2) _let_1)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (not (= _let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= _let_1 mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (or (= V0x mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Ebit_2ELOG2 V0x)) V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0x) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1n)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0i mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2op (-> Bool Bool Bool)) (V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0i) (not ((mono_2Ec_2Ebit_2EBIT V0i) ((((mono_2Ec_2Ebit_2EBITWISE V1n) V2op) V3a) V4b))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x))) (= ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EDIV V1n) _let_1)) _let_1) ((mono_2Ec_2Earithmetic_2E_2D V1n) ((mono_2Ec_2Earithmetic_2EMOD V1n) _let_1))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (=> (and (not (= V2n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V0a)) V2n) ((mono_2Ec_2Eprim__rec_2E_3C V2n) (_let_1 V1b))) (exists ((V3i mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Ebit_2EBIT V3i) V2n) ((mono_2Ec_2Eprim__rec_2E_3C V3i) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V3i)))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0h) mono_2Ec_2Enum_2E0))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V1a)) (_let_1 V2b))) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1a) V2b))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V3a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V0x))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) (= (_let_1 (((mono_2Ec_2Ebit_2EBIT__MODIFY V1n) V2f) V3a)) ((V2f V0x) (_let_1 V3a)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EDIV__2EXP V0x) V1n) ((mono_2Ec_2Earithmetic_2EDIV V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EDIVMOD__2EXP V0x) V1n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebit_2EDIV__2EXP V0x) V1n)) ((mono_2Ec_2Ebit_2EMOD__2EXP V0x) V1n)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2ES_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2ES_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1j mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EMOD V2k) V0n)) V1j)) V0n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V2k) V1j)) V0n))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27d))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l1_2E0))) (let ((_let_4 (_let_2 V1l2_2E0))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_4)) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_1))) c_2Elist_2ECONS_2E0)) _let_4) _let_3)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EMOD__2EXP V0x) V1n) ((mono_2Ec_2Earithmetic_2EMOD V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0x)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27b) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Efcp_2EFCP__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Efcp_2EFCP__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBITS V0h))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V1m))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V2l) V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) V0h)) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A ((_let_1 _let_2) V3n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2D _let_2) V2l)))) (((mono_2Ec_2Ebit_2EBITS V1m) V2l) V3n)) ((_let_1 V2l) V3n)))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1n mono_2Etyop_2Enum_2Enum) (V2t mono_2Etyop_2Enum_2Enum) (V3r mono_2Etyop_2Enum_2Enum)) (= ((((F0 V0f) V1n) V2t) V3r) ((mono_2Ec_2Enumpair_2Encons (V0f V1n)) V3r))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (mono_2Ec_2Enumpair_2Enmap V0f) ((mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) (F0 V0f)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELTL_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELTL_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 (_let_1 _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) ((s A_27a) V0x_2E0))) _let_2)))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (or (= V0n mono_2Ec_2Enum_2E0) (exists ((V1h mono_2Etyop_2Enum_2Enum) (V2t mono_2Etyop_2Enum_2Enum)) (= V0n ((mono_2Ec_2Enumpair_2Encons V1h) V2t))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1a) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= ((mono_2Ec_2Enumpair_2Einvtri0 V0n) V1a) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_1)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0n) V1a)) ((mono_2Ec_2Enumpair_2Einvtri0 ((mono_2Ec_2Earithmetic_2E_2D V0n) _let_1)) _let_1))))) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s (tyop_2Ellist_2Ellist _let_1)))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V0h_2E0))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_3)))) (_let_4 ((c_2Ellist_2ELAPPEND_2E2 _let_5) (_let_4 (c_2Ellist_2ELFLATTEN_2E1 _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (_let_4 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27a))) (let ((_let_9 (_let_4 _let_8))) (= (_let_2 (((c_2Enumpair_2Enfoldl_2E3 _let_7) _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Enumpair_2Enfoldl_2E0)) _let_7))) _let_3))) _let_1))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Epred__set_2EDELETE_2E2 (_let_4 V2s_2E0)))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 (_let_4 (_let_5 _let_2))) _let_3)) (_let_4 ((c_2Epred__set_2EDELETE_2E2 (_let_4 (_let_5 _let_3))) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 (_let_1 _let_2))) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0R_2E0)) _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0t mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V3a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3a_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) V2f_2E0))) (let ((_let_6 (c_2Enumpair_2Enfoldl_2E3 _let_5))) (let ((_let_7 (_let_6 _let_2))) (and (= (_let_1 (_let_7 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Enumpair_2Encons V1h) V0t))))) (_let_1 ((_let_6 (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1h))))) _let_2))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V0t))))) (= (_let_1 (_let_7 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Einvtri V0n) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Enumpair_2Einvtri0 V0n) mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (exists ((V1x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EPSUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 c_2Epred__set_2EUNIV_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1)))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V2a) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (=> (=> (not ((mono_2Ec_2Eprim__rec_2E_3C V1n) _let_1)) ((V0P ((mono_2Ec_2Earithmetic_2E_2D V1n) _let_1)) _let_1)) ((V0P V1n) V2a)))) (forall ((V3v mono_2Etyop_2Enum_2Enum) (V4v1 mono_2Etyop_2Enum_2Enum)) ((V0P V3v) V4v1)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (exists ((V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (= V0n ((mono_2Ec_2Enumpair_2Enpair V1x) V2y)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_3 ((c_2Enumpair_2Enlistrec_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s (_let_1 (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2Enumpair_2Etri V0m) (mono_2Ec_2Enumpair_2Etri V1n)) (= V0m V1n))) (forall ((A_27a d) (V0c_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0c_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (= (= _let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)) (= _let_3 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (_let_1 _let_2)))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a)))) (let ((_let_2 (_let_1 V1r_2E0))) (= mono_2Ec_2Ebool_2ET (= (_let_1 (c_2Efcp_2Edest__cart_2E1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) (c_2Efcp_2Emk__cart_2E1 _let_2)))) _let_2))))) (forall ((V0a_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Efcp_2Emk__cart_2E1 ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a)) (c_2Efcp_2Edest__cart_2E1 _let_2)))) _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V2l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V0x_2E0)) (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (_let_1 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_5 _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0P_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) F0_2E0)) _let_7))) _let_3))) (= (_let_4 ((c_2Erich__list_2ESPLITP_2E2 _let_7) _let_3)) (_let_4 ((c_2Epair_2E_2C_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Enfst V0n)) V0n)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (not (= ((mono_2Ec_2Enumpair_2Encons V1x) V0y) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 V0l_2E0))) (= (= _let_3 (_let_2 c_2Elist_2ENIL_2E0)) (= (_let_1 (c_2Ellist_2EfromList_2E1 _let_3)) (_let_1 c_2Ellist_2ELNIL_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1t mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (= (((F0 V0n) V1t) V2r) ((mono_2Ec_2Earithmetic_2E_2B V2r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= mono_2Ec_2Enumpair_2Enlen ((mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) F0)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))) _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0r_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27d)))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 ((s (_let_3 A_27a)) V1g_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27b) A_27a))) (= (_let_5 (c_2Eset__relation_2Erange_2E1 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_6)) ((c_2Epair_2E_23_23_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V2f_2E0)) _let_4))) _let_2)))) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erange_2E1 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 (_let_1 _let_2))) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d)) (and (forall ((V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0)))) (forall ((V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V1b2_2E0)) (_let_1 V2b_2E0))))))))))) (forall ((V6b1_2E0 u) (V7b2_2E0 u) (V8b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V6b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V7b2_2E0)) (_let_1 V8b3_2E0)))))) (forall ((V9b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V6b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V7b2_2E0)) (_let_1 V9b_2E0)))) (_let_1 V8b3_2E0))))))))))) (forall ((V10b1_2E0 u) (V11b2_2E0 u) (V12b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V10b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V11b2_2E0)) (_let_1 V12b3_2E0)))))) (forall ((V13b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V10b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V13b_2E0)) (_let_1 V11b2_2E0)))) (_let_1 V12b3_2E0))))))))))) (forall ((V18b1_2E0 u) (V19b2_2E0 u) (V20b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V18b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V20b3_2E0)) (_let_1 V19b2_2E0)))))) (forall ((V21b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V18b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V20b3_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V21b_2E0)) (_let_1 V19b2_2E0))))))))))))) (forall ((V22b1_2E0 u) (V23b2_2E0 u) (V24b3_2E0 u) (V25b4_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V25b4_2E0))) (let ((_let_3 (_let_1 V24b3_2E0))) (let ((_let_4 (_let_1 V23b2_2E0))) (let ((_let_5 (_let_1 V22b1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))))))))) (forall ((V26b1_2E0 u) (V27b2_2E0 u) (V28b3_2E0 u) (V29b4_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V29b4_2E0))) (let ((_let_3 (_let_1 V28b3_2E0))) (let ((_let_4 (_let_1 V27b2_2E0))) (let ((_let_5 (_let_1 V26b1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))))))))) (forall ((V45b1_2E0 u) (V46b2_2E0 u) (V47b3_2E0 u) (V48b4_2E0 u) (V49b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V49b5_2E0))) (let ((_let_3 (_let_1 V48b4_2E0))) (let ((_let_4 (_let_1 V47b3_2E0))) (let ((_let_5 (_let_1 V46b2_2E0))) (let ((_let_6 (_let_1 V45b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))) _let_2))))))))))))))) (forall ((V50b1_2E0 u) (V51b2_2E0 u) (V52b3_2E0 u) (V53b4_2E0 u) (V54b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V53b4_2E0))) (let ((_let_3 (_let_1 V52b3_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V54b5_2E0)))) (let ((_let_5 (_let_1 V50b1_2E0))) (let ((_let_6 (_let_1 V51b2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) (_let_1 (_let_4 _let_3))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))))) (forall ((V55b1_2E0 u) (V56b2_2E0 u) (V57b3_2E0 u) (V58b4_2E0 u) (V59b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V58b4_2E0))) (let ((_let_3 (_let_1 V57b3_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V59b5_2E0)))) (let ((_let_5 (_let_1 V55b1_2E0))) (let ((_let_6 (_let_1 V56b2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) (_let_1 (_let_4 _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))))) (forall ((V70b1_2E0 u) (V71b2_2E0 u) (V72b3_2E0 u) (V73b4_2E0 u) (V74b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V74b5_2E0))) (let ((_let_3 (_let_1 V73b4_2E0))) (let ((_let_4 (_let_1 V71b2_2E0))) (let ((_let_5 (_let_1 V72b3_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V70b1_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_4))) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_6 _let_5))) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V80b1_2E0 u) (V81b2_2E0 u) (V82b3_2E0 u) (V83b4_2E0 u) (V84b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V84b5_2E0))) (let ((_let_3 (_let_1 V83b4_2E0))) (let ((_let_4 (_let_1 V81b2_2E0))) (let ((_let_5 (_let_1 V82b3_2E0))) (let ((_let_6 (_let_1 V80b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V85b1_2E0 u) (V86b2_2E0 u) (V87b3_2E0 u) (V88b4_2E0 u) (V89b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V89b5_2E0))) (let ((_let_3 (_let_1 V88b4_2E0))) (let ((_let_4 (_let_1 V86b2_2E0))) (let ((_let_5 (_let_1 V87b3_2E0))) (let ((_let_6 (_let_1 V85b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V90b1_2E0 u) (V91b2_2E0 u) (V92b3_2E0 u) (V93b4_2E0 u) (V94b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V93b4_2E0))) (let ((_let_3 (_let_1 V94b5_2E0))) (let ((_let_4 (_let_1 V92b3_2E0))) (let ((_let_5 (_let_1 V90b1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V91b2_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_5))) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V105b1_2E0 u) (V106b2_2E0 u) (V107b3_2E0 u) (V108b4_2E0 u) (V109b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V108b4_2E0))) (let ((_let_3 (_let_1 V109b5_2E0))) (let ((_let_4 (_let_1 V107b3_2E0))) (let ((_let_5 (_let_1 V105b1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V106b2_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_4))) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V100b1_2E0 u) (V101b2_2E0 u) (V102b3_2E0 u) (V103b4_2E0 u) (V104b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V103b4_2E0))) (let ((_let_3 (_let_1 V104b5_2E0))) (let ((_let_4 (_let_1 V102b3_2E0))) (let ((_let_5 (_let_1 V100b1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V101b2_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_4))) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V95b1_2E0 u) (V96b2_2E0 u) (V97b3_2E0 u) (V98b4_2E0 u) (V99b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V98b4_2E0))) (let ((_let_3 (_let_1 V99b5_2E0))) (let ((_let_4 (_let_1 V97b3_2E0))) (let ((_let_5 (_let_1 V95b1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V96b2_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_5))) _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V75b1_2E0 u) (V76b2_2E0 u) (V77b3_2E0 u) (V78b4_2E0 u) (V79b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V79b5_2E0))) (let ((_let_3 (_let_1 V78b4_2E0))) (let ((_let_4 (_let_1 V76b2_2E0))) (let ((_let_5 (_let_1 V77b3_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V75b1_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_4))) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_6 _let_5))) _let_4))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V65b1_2E0 u) (V66b2_2E0 u) (V67b3_2E0 u) (V68b4_2E0 u) (V69b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V68b4_2E0))) (let ((_let_3 (_let_1 V67b3_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V69b5_2E0)))) (let ((_let_5 (_let_1 V65b1_2E0))) (let ((_let_6 (_let_1 V66b2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) (_let_1 (_let_4 _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))))) (forall ((V60b1_2E0 u) (V61b2_2E0 u) (V62b3_2E0 u) (V63b4_2E0 u) (V64b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V63b4_2E0))) (let ((_let_3 (_let_1 V62b3_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V64b5_2E0)))) (let ((_let_5 (_let_1 V60b1_2E0))) (let ((_let_6 (_let_1 V61b2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) (_let_1 (_let_4 _let_3))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))))) (forall ((V40b1_2E0 u) (V41b2_2E0 u) (V42b3_2E0 u) (V43b4_2E0 u) (V44b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V44b5_2E0))) (let ((_let_3 (_let_1 V43b4_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V42b3_2E0)))) (let ((_let_5 (_let_1 V41b2_2E0))) (let ((_let_6 (_let_1 V40b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) (_let_1 (_let_4 _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_4 _let_3))) _let_2))))))))))))))) (forall ((V35b1_2E0 u) (V36b2_2E0 u) (V37b3_2E0 u) (V38b4_2E0 u) (V39b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V39b5_2E0))) (let ((_let_3 (_let_1 V38b4_2E0))) (let ((_let_4 (_let_1 V37b3_2E0))) (let ((_let_5 (_let_1 V36b2_2E0))) (let ((_let_6 (_let_1 V35b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))) _let_2))))))))))))))) (forall ((V30b1_2E0 u) (V31b2_2E0 u) (V32b3_2E0 u) (V33b4_2E0 u) (V34b5_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V34b5_2E0))) (let ((_let_3 (_let_1 V33b4_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V32b3_2E0)))) (let ((_let_5 (_let_1 V31b2_2E0))) (let ((_let_6 (_let_1 V30b1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_6) (_let_1 (_let_4 _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_5))) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 (_let_4 _let_3))) _let_2))))))))))))))) (forall ((V14b1_2E0 u) (V15b2_2E0 u) (V16b3_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V14b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V16b3_2E0)) (_let_1 V15b2_2E0)))))) (forall ((V17b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V14b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V16b3_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V15b2_2E0)) (_let_1 V17b_2E0))))))))))))) (forall ((V3b1_2E0 u) (V4b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V3b1_2E0)) (_let_1 V4b2_2E0)))) (forall ((V5b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V3b1_2E0)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 (_let_1 V5b_2E0)) (_let_1 V4b2_2E0))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Einvtri (mono_2Ec_2Enumpair_2Etri V0n)) V0n)) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2EerrorStateMonad_2EJOIN_2E0)) ((s (_let_3 _let_5)) (c_2EerrorStateMonad_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2EerrorStateMonad_2EUNIT_2E0))))) (_let_4 c_2Ecombin_2EI_2E0)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eset__relation_2Elinear__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0)) _let_2))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) (_let_1 ((c_2Eset__relation_2Emaximal__elements_2E2 (_let_1 V0s_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0L_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0L_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 ((c_2Elist_2ELEN_2E2 _let_1) (_let_2 (i_mono_2Etyop_2Enum_2Enum V1n))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) V1n))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0t mono_2Etyop_2Enum_2Enum) (V1n_2E0 u) (V2h mono_2Etyop_2Enum_2Enum) (V3f_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0t)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s (_let_4 _let_5)) V3f_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V1n_2E0))) (let ((_let_9 ((c_2Enumpair_2Enlistrec_2E3 _let_8) _let_6))) (and (= (_let_7 (_let_9 (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_8) (= (_let_7 (_let_9 (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Enumpair_2Encons V2h) V0t))))) (_let_7 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_5) ((app_2E2 _let_6) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2h))))) _let_2))) (_let_7 (_let_9 _let_2)))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enumpair_2Etri V0n)) (mono_2Ec_2Enumpair_2Etri V1m)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 _let_2))) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27state d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_2))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0l_2E0 u) (V1l1_2E0 u) (V2l1_27_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (_let_1 V2l1_27_2E0))) (let ((_let_4 (c_2Esorting_2EPERM_2E2 (_let_1 V0l_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_2))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Enumpair_2Einvtri0 V0n) V1a))) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1)) (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V1n) V0m))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2)))) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2))))))))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0n))) (= (mono_2Ec_2Enumpair_2Etri _let_1) ((mono_2Ec_2Earithmetic_2E_2B _let_1) (mono_2Ec_2Enumpair_2Etri V0n))))) _let_249) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0x (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum) (V3a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V1n))) (let ((_let_2 (mono_2Ec_2Epred__set_2EDISJOINT_2Emono_2Etyop_2Enum_2Enum V0x))) (let ((_let_3 (mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum _let_1))) (=> (_let_2 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum (_let_3 ((mono_2Ec_2Earithmetic_2E_2B V3a) V2b)))) (and (_let_2 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum (_let_3 V3a))) (_let_2 (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_2B (_let_1 V3a))) V2b))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (forall ((V1h mono_2Etyop_2Enum_2Enum) (V2t mono_2Etyop_2Enum_2Enum)) (=> (V0P V2t) (V0P ((mono_2Ec_2Enumpair_2Encons V1h) V2t)))) (V0P mono_2Ec_2Enum_2E0)) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (V0P V3n)))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eirreflexive_2E1 _let_2)))) (forall ((V1ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Esorting_2ESORTED_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (mono_2Ec_2Enumpair_2Etri V0n))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (= (= _let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3)) _let_2)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (V0w_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_4 ((c_2Ewellorder_2Ewleast_2E2 _let_3) _let_2)) (_let_4 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Ewellorder_2EelsOf_2E1 _let_3))) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Ensnd V0n)) V0n)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27state) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27state)))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EerrorStateMonad_2EREAD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EerrorStateMonad_2EREAD_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Enumpair_2Enlistrec_2E3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) ((s (_let_2 (_let_2 (_let_2 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Enumpair_2Etri ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Einvtri V0n)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X1)))) (let ((_let_3 (tyop_2EEncode_2Etree A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27d))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Ellist_2ELFLATTEN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Ellist_2ELFLATTEN_2E0)) _let_3)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Ensnd V0n) ((mono_2Ec_2Earithmetic_2E_2D V0n) (mono_2Ec_2Enumpair_2Etri (mono_2Ec_2Enumpair_2Einvtri V0n))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (or (= (_let_1 V0l_2E0) (_let_1 c_2Elist_2ENIL_2E0)) (exists ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) (_let_1 V2t_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Enumpair_2Enmap V2f))) (and (= (_let_1 ((mono_2Ec_2Enumpair_2Encons V1h) V0t)) ((mono_2Ec_2Enumpair_2Encons (V2f V1h)) (_let_1 V0t))) (= (_let_1 mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_2))))) (let ((_let_6 (_let_1 V0s_2E0))) (let ((_let_7 (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_6) _let_2))))) (let ((_let_8 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_6) _let_3)))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_8) _let_2))) (and _let_5 _let_7)) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_2) _let_8))) (and _let_7 _let_5)))))))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0y) V1x) (= (mono_2Ec_2Enumpair_2Einvtri ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Etri V1x)) V0y)) V1x))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (=> V1P_27 V3Q_27) (=> V0P V2Q)) (=> (or V0P V1P_27) (or V2Q V3Q_27)))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 ((s A_27a) V0e_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_3))) _let_2))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EUNIQUE_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n mono_2Ec_2Enum_2E0)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2ESUC) (mono_2Ec_2Erich__list_2ECOUNT__LIST ((mono_2Ec_2Earithmetic_2E_2D V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1nlist mono_2Etyop_2Enum_2Enum) (V2h mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumpair_2Encons V2h))) (and (= ((mono_2Ec_2Enumpair_2Enapp (_let_1 V0t)) V1nlist) (_let_1 ((mono_2Ec_2Enumpair_2Enapp V0t) V1nlist))) (= ((mono_2Ec_2Enumpair_2Enapp mono_2Ec_2Enum_2E0) V1nlist) V1nlist)))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (=> V1P_27 V3Q_27) (=> V2Q V0P)) (=> (=> V0P V1P_27) (=> V2Q V3Q_27)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 _let_2))) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 (_let_2 A_27a))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (_let_3 A_27a))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (= (_let_6 (((c_2Enumpair_2Enlistrec_2E3 _let_7) _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) c_2Enumpair_2Enlistrec_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Eone_2Eone)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 _let_2))) _let_2)))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Ensnd ((mono_2Ec_2Enumpair_2Enpair V1x) V0y)) V0y)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ecombin_2ECOMM_2E1 _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ecombin_2EASSOC_2E1 _let_2))) (forall ((V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((c_2Elist_2EFOLDR_2E3 ((s (_let_4 (_let_4 A_27a))) V0f_2E0)) (_let_3 V1e_2E0)))) (= (_let_3 (_let_5 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (_let_5 _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2c Bool) (V3infos mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) V1rows_2E0))) (let ((_let_2 ((s A_27a) V0v_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_2) _let_1) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V2c))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos))))) (=> (not V2c) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_2) _let_1))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Efcp_2EFCP__FOLD_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Efcp_2EFCP__FOLD_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_4 (_let_3 _let_2))))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (s _let_2))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (_let_4 _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (= (_let_7 (((c_2Enumpair_2Enlistrec_2E3 _let_8) _let_6) _let_1)) (_let_7 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Enumpair_2Enlistrec_2E0)) _let_8))) _let_6))) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 (_let_1 _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enumpair_2Etri V0n)) ((mono_2Ec_2Earithmetic_2E_2A V0n) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (_let_1 _let_2))) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_8 (_let_2 _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E3 _let_6) _let_4) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E0)) _let_6))) _let_4))) _let_1)))))))))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Enfst ((mono_2Ec_2Enumpair_2Enpair V1x) V0y)) V1x)) (forall ((A_27a d) (A_27b d) (V0s2_2E0 u) (V1s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s2_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V4n mono_2Etyop_2Enum_2Enum) (V5t mono_2Etyop_2Enum_2Enum) (V6r_2E0 u) (V7a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7a_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (_let_9 V6r_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_12 (_let_6 _let_11))) (let ((_let_13 (_let_6 _let_12))) (= (_let_1 ((app_2E2 (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_13)) F1_2E0)) _let_8))) _let_4))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V5t))))) _let_10))) _let_2)) (_let_1 ((app_2E2 _let_10) (_let_1 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_4))) _let_2))))))))))))))))))) (=> (forall ((V3a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3a_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0f_2E0 u) (V1a_2E0 u) (V2l mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2l)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (_let_5 (_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))))) (let ((_let_9 (s _let_4))) (= (_let_1 (((c_2Enumpair_2Enfoldl_2E3 _let_7) _let_2) _let_3)) (_let_1 ((app_2E2 (_let_9 (((c_2Enumpair_2Enlistrec_2E3 (_let_9 F0_2E0)) ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) F1_2E0)) _let_7))) _let_3))) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (and (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n)))) (= (mono_2Ec_2Enumpair_2Etri _let_1) ((mono_2Ec_2Earithmetic_2E_2B _let_1) (mono_2Ec_2Enumpair_2Etri (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (= (mono_2Ec_2Enumpair_2Etri _let_1) ((mono_2Ec_2Earithmetic_2E_2B _let_1) (mono_2Ec_2Enumpair_2Etri ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) _let_249) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1l mono_2Etyop_2Enum_2Enum)) (= (= V1l mono_2Ec_2Enum_2E0) (F0 V1l))) (forall ((V0n_2E0 u) (V1l mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1l) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enumpair_2Ensnd _let_1))))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s (_let_5 _let_6)) V2f_2E0))) (let ((_let_8 (s A_27a))) (let ((_let_9 (_let_8 V0n_2E0))) (let ((_let_10 ((c_2Enumpair_2Enlistrec_2E3 _let_9) _let_7))) (= (_let_8 (_let_10 (_let_2 (i_mono_2Etyop_2Enum_2Enum V1l)))) (_let_8 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V1l)))) _let_9) (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 _let_7) (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enumpair_2Enfst _let_1)))))) _let_3))) (_let_8 (_let_10 _let_3)))))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Enumpair_2Einvtri0 V0n) V1a))) (= ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Etri (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1)) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Enumpair_2Etri V1a))))) (= (_let_248 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEXISTS_2Emono_2Etyop_2Emin_2Ebool)) (_let_248 c_2Elist_2EEXISTS_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Einvtri V0n)) V0n)) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist _let_2))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EGENLIST_2E2 _let_5) _let_1)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EGENLIST_2E0)) _let_5))) _let_1)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1t mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumpair_2Encons V0h) V1t) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Enumpair_2Enpair V0h) V1t)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumpair_2Einvtri V0n))) (= (mono_2Ec_2Enumpair_2Enfst V0n) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Etri _let_1)) _let_1)) V0n)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Etri V0m)) (mono_2Ec_2Enumpair_2Etri V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (= (_let_247 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum)) (_let_247 c_2Enumpair_2Enlistrec_2E0)) (forall ((A_27a d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1h_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V2f_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_4 V0t_2E0))) (let ((_let_6 ((s A_27b) V1h_2E0))) (and (= (_let_2 ((c_2Elist_2ELIST__BIND_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 _let_6) _let_5))) _let_3)) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 ((app_2E2 _let_3) _let_6))) (_let_2 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3))))) (= (_let_2 ((c_2Elist_2ELIST__BIND_2E2 (_let_4 c_2Elist_2ENIL_2E0)) _let_3)) (_let_2 c_2Elist_2ENIL_2E0)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumpair_2Etri V0n))) (let ((_let_2 (= V0n mono_2Ec_2Enum_2E0))) (and (= _let_2 (= _let_1 mono_2Ec_2Enum_2E0)) (= _let_2 (= mono_2Ec_2Enum_2E0 _let_1)))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1n_2E0 u) (V2f_2E0 u) (V3l mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 (_let_1 A_27a))))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_4))) (let ((_let_6 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) V0P_2E0)) ((s A_27a) V1n_2E0)))) ((s _let_3) V2f_2E0)))))) (=> (=> (not (= V3l mono_2Ec_2Enum_2E0)) (_let_6 (mono_2Ec_2Enumpair_2Ensnd ((mono_2Ec_2Earithmetic_2E_2D V3l) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (_let_6 V3l))))))))) (forall ((V4v_2E0 u) (V5v1_2E0 u) (V6v2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 (_let_1 A_27a))))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_4))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) V0P_2E0)) ((s A_27a) V4v_2E0)))) ((s _let_3) V5v1_2E0)))) V6v2))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0t mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum)) (and (= (mono_2Ec_2Enumpair_2Enlen mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (= (mono_2Ec_2Enumpair_2Enlen ((mono_2Ec_2Enumpair_2Encons V1h) V0t)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Enlen V0t)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Enumpair_2Etri ((mono_2Ec_2Earithmetic_2E_2B V0y) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Etri V0y)) V1n)) (= (mono_2Ec_2Enumpair_2Einvtri V1n) V0y))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3t mono_2Etyop_2Enum_2Enum) (V4r mono_2Etyop_2Enum_2Enum)) (= (((F0 V2n) V3t) V4r) ((mono_2Ec_2Enumpair_2Encons V2n) V4r))) (forall ((V0l1 mono_2Etyop_2Enum_2Enum) (V1l2 mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumpair_2Enapp V0l1) V1l2) (((mono_2Ec_2Enumpair_2Enlistrec_2Emono_2Etyop_2Enum_2Enum V1l2) F0) V0l1))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2r) (= ((mono_2Ec_2Eprim__rec_2E_3C V0a) V1b) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EEXP V0a) V2r)) ((mono_2Ec_2Earithmetic_2EEXP V1b) V2r))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V0p_2E0 u) (V14x_2E0 u) (V15row_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V14x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0p_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_8 ((s _let_7) V15row_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_4 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3))) _let_8))) (= (_let_2 ((app_2E2 _let_8) ((s A_27b) ((app_2E2 _let_6) _let_3)))) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))) (forall ((V0p_2E0 u) (V1g_2E0 u) (V2r_2E0 u) (V3p_27_2E0 u) (V4g_27_2E0 u) (V5r_27_2E0 u) (V6rows1_2E0 u) (V7rows2_2E0 u) (V8rows3_2E0 u) (V9v_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_4 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_3 A_27b)) V3p_27_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) V4g_27_2E0)) ((s (_let_3 A_27c)) V5r_27_2E0)))) (_let_2 V8rows3_2E0))))) (let ((_let_6 (_let_2 V7rows2_2E0))) (let ((_let_7 (c_2Elist_2EAPPEND_2E2 (_let_2 V6rows1_2E0)))) (let ((_let_8 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V9v_2E0)))) (let ((_let_9 (s A_27c))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (=> (and (forall ((V10x_2E0 u)) (let ((_let_1 ((s A_27a) V10x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s A_27b))) (=> (and (= (_let_3 V9v_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V0p_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V1g_2E0)) _let_1)))) (exists ((V11x_27_2E0 u)) (let ((_let_1 ((s A_27d) V11x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (s A_27b))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V4g_27_2E0)) _let_1))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0p_2E0)) ((s A_27a) V10x_2E0))) (_let_3 ((app_2E2 ((s (_let_2 A_27b)) V3p_27_2E0)) _let_1))))))))))))) (forall ((V14x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 ((s A_27a) V14x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0p_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s A_27b))) (=> (and (= (_let_9 V9v_2E0) (_let_9 ((app_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V1g_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EEVERY_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_2))) ((s (tyop_2Elist_2Elist _let_1)) V7rows2_2E0))))))))))))))) (forall ((V12x_2E0 u) (V13x_27_2E0 u)) (let ((_let_1 ((s A_27d) V13x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (s A_27c))) (let ((_let_4 ((s A_27a) V12x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 ((app_2E2 ((s (_let_5 A_27b)) V0p_2E0)) _let_4)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (= (_let_6 V9v_2E0) _let_7) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) V1g_2E0)) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V4g_27_2E0)) _let_1))) (= _let_7 (_let_6 ((app_2E2 ((s (_let_2 A_27b)) V3p_27_2E0)) _let_1)))) (= (_let_3 ((app_2E2 ((s (_let_5 A_27c)) V2r_2E0)) _let_4)) (_let_3 ((app_2E2 ((s (_let_2 A_27c)) V5r_27_2E0)) _let_1)))))))))))))) (= (_let_9 (_let_8 (_let_2 (_let_7 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_4 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 ((s (_let_10 A_27b)) V0p_2E0)) ((s (_let_10 tyop_2Emin_2Ebool)) V1g_2E0)) ((s (_let_10 A_27c)) V2r_2E0)))) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_5)))))))) (_let_9 (_let_8 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_7 _let_6))) _let_5))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0B_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1A_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_3 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Ebijns_2E1 _let_4))) ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Ebijns_2E1 _let_2)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0a))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a) (_let_2 V2r) (_let_2 V1x)) (= (_let_1 ((mono_2Ec_2Elogroot_2EROOT V2r) V1x)) ((mono_2Ec_2Earithmetic_2EDIV (_let_1 V1x)) V2r)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V2x))))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2x) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_5)))) (= (_let_4 (_let_3 _let_5)) (_let_4 (_let_3 (_let_1 V1l2_2E0))))))))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= _let_3 _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0ys_2E0 u) (V1y_2E0 u) (V2xs_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Elist_2ENIL_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_6 (_let_2 V0ys_2E0))) (let ((_let_7 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)))) (let ((_let_8 (_let_2 V2xs_2E0))) (let ((_let_9 (c_2Epred__set_2EINSERT_2E2 _let_8))) (let ((_let_10 (s A_27a))) (let ((_let_11 (_let_10 V3x_2E0))) (let ((_let_12 (c_2Elist_2ECONS_2E2 _let_11))) (let ((_let_13 (_let_10 V1y_2E0))) (let ((_let_14 (tyop_2Emin_2Efun A_27a))) (let ((_let_15 (_let_14 tyop_2Emin_2Ebool))) (let ((_let_16 (c_2Epred__set_2EINSERT_2E2 _let_3))) (and (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 (_let_4 (_let_16 _let_7)))) _let_3) (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 (_let_4 (_let_9 (_let_4 (_let_16 _let_5)))))) _let_3) (= (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 (_let_4 ((c_2Epred__set_2EINSERT_2E2 (_let_2 (_let_12 _let_8))) (_let_4 ((c_2Epred__set_2EINSERT_2E2 (_let_2 ((c_2Elist_2ECONS_2E2 _let_13) _let_6))) _let_5)))))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_14 _let_15)) F0_2E0)) _let_11))) _let_13))) (_let_2 (_let_12 (_let_2 (c_2Erich__list_2Elongest__prefix_2E1 (_let_4 (_let_9 _let_7))))))) _let_3))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V0x_2E0)) ((s A_27b) V1y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0)))))) (exists ((V3z_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V3z_2E0))) (let ((_let_3 (s A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0)))))) (= (_let_3 V0x_2E0) (_let_3 (c_2Epair_2EFST_2E1 _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Elogroot_2EROOT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Earithmetic_2ENUMERAL V0n)) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elogroot_2ESQRTd V0n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_4 ((c_2Elist_2EMAP_2E2 _let_2) ((s (tyop_2Elist_2Elist A_27a)) (_let_3 _let_1)))) (_let_4 (_let_3 ((s A_27b) ((app_2E2 _let_2) _let_1)))))))))) (forall ((V0x Bool) (V1t1 Bool) (V2t2 Bool)) (=> (=> V1t1 V2t2) (=> (or V0x V1t1) (or V0x V2t2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0a) (= ((mono_2Ec_2Elogroot_2ELOG V0a) _let_1) mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2Eschroeder__close_2E3 _let_7) _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2Eschroeder__close_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (let ((_let_3 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (let ((_let_6 (mono_2Ec_2Enum_2ESUC V0n))) (let ((_let_7 (mono_2Ec_2Elogroot_2EiSQRT0 _let_6))) (let ((_let_8 (mono_2Ec_2Earithmetic_2EBIT2 _let_4))) (let ((_let_9 (mono_2Ec_2Elogroot_2EiSQRT1 _let_6))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EBIT1 _let_10))) (let ((_let_12 (mono_2Ec_2Elogroot_2EiSQRT2 _let_6))) (let ((_let_13 (mono_2Ec_2Earithmetic_2EBIT2 _let_10))) (and (= (mono_2Ec_2Elogroot_2ESQRTd mono_2Ec_2Earithmetic_2EZERO) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (= (mono_2Ec_2Elogroot_2ESQRTd (mono_2Ec_2Enum_2ESUC _let_8)) _let_9) (= (mono_2Ec_2Elogroot_2ESQRTd (mono_2Ec_2Enum_2ESUC _let_11)) _let_12) (= (mono_2Ec_2Elogroot_2ESQRTd (mono_2Ec_2Enum_2ESUC _let_13)) (mono_2Ec_2Elogroot_2EiSQRT3 _let_6)) (= (mono_2Ec_2Elogroot_2ESQRTd (mono_2Ec_2Enum_2ESUC _let_5)) _let_7) (= (mono_2Ec_2Elogroot_2ESQRTd _let_13) _let_12) (= (mono_2Ec_2Elogroot_2ESQRTd _let_11) _let_9) (= (mono_2Ec_2Elogroot_2ESQRTd _let_8) _let_7) (= (mono_2Ec_2Elogroot_2ESQRTd _let_5) (mono_2Ec_2Elogroot_2EiSQRT3 V0n)) (= (mono_2Ec_2Elogroot_2ESQRTd (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)) (_let_3 _let_2)) (= (mono_2Ec_2Elogroot_2ESQRTd _let_1) (_let_3 mono_2Ec_2Enum_2E0))))))))))))))))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V2p)) V0r)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP V2p) V0r)) V1n)) (= ((mono_2Ec_2Elogroot_2EROOT V0r) V1n) V2p))) (forall ((V0e mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0e))) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0e) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V1a) V2b) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1a)) (_let_1 V2b)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EDIFF_2E3 _let_2) _let_6) _let_3))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u) (V2a2_2E0 u) (V3a1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0b2_2E0))) (let ((_let_3 (_let_1 V2a2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V4R_2E0))) (let ((_let_7 (app_2E2 _let_6))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V1b1_2E0))) (let ((_let_11 (_let_1 V3a1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Equotient_2EEQUIV_2E1 _let_6))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_11))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2)))) (=> (= _let_11 _let_10) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2EROOT V0r))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_2 V0r) (_let_2 V2y)) (= ((mono_2Ec_2Earithmetic_2EDIV (_let_1 V1x)) V2y) (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V1x) ((mono_2Ec_2Earithmetic_2EEXP V2y) V0r)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1i) _let_4) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2EindexedLists_2EdelN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1i))) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D _let_4) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_7))) _let_5)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ewellorder_2Ewo2wo_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ewellorder_2Ewo2wo_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0a))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C _let_2) V0a) ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1x)) (= (_let_1 V1x) ((mono_2Ec_2Earithmetic_2E_2B _let_2) (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V1x) V0a)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Elogroot_2EROOT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (= (mono_2Ec_2Elogroot_2ESQRTd V0n) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_1) ((mono_2Ec_2Earithmetic_2E_2D V0n) ((mono_2Ec_2Earithmetic_2E_2A _let_1) _let_1)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_1 _let_2)) (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum)) (= (= V2d mono_2Ec_2Enum_2E0) (F2 V2d))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_1))))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)))) (= ((F1 V1p) V2d) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F2 V2d)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_3) (_let_2 (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC _let_3)) ((mono_2Ec_2Earithmetic_2E_2D (_let_2 V2d)) (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))))))))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (F0 V1p) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F1 V1p)) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elogroot_2EiSQRT0 V0n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 F0) (mono_2Ec_2Elogroot_2ESQRTd V0n)))))))) (forall ((A_27a d) (V0s_2E0 u)) (= (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 tyop_2Enum_2Enum)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0b))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) ((mono_2Ec_2Eprim__rec_2E_3C V1x) V0b) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2y)) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V0b) V2y)) V1x)) (mono_2Ec_2Enum_2ESUC (_let_1 V2y)))))) (forall ((A_27a d) (V0E_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Equotient_2EEQUIV_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0E_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0E_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (_let_6 (_let_5 (_let_1 V1x_2E0))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_2))) (= _let_7 (_let_6 (_let_5 _let_2))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0b))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1x)) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0b) V1x)) (mono_2Ec_2Enum_2ESUC (_let_1 V1x)))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (exists ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (forall ((V1a mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((V0f V1a) V2n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EEXP V1a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1a)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_2 _let_1)) V2n) ((mono_2Ec_2Eprim__rec_2E_3C V2n) (_let_2 (mono_2Ec_2Enum_2ESUC _let_1))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((V0e mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0e))) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0e) (= ((mono_2Ec_2Eprim__rec_2E_3C V1a) V2b) ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V1a)) (_let_1 V2b)))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2r) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP V0a) V2r)) ((mono_2Ec_2Earithmetic_2EEXP V1b) V2r))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_5 (c_2Eset__relation_2Efinite__prefixes_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_2) (_let_1 (c_2Eset__relation_2Erange_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Elogroot_2ELOG V0a) V1n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EEXP V0a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_2 _let_1)) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (_let_2 (mono_2Ec_2Enum_2ESUC _let_1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V4e mono_2Etyop_2Enum_2Enum)) (= (= V4e mono_2Ec_2Enum_2E0) (F4 V4e))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum) (V3c mono_2Etyop_2Enum_2Enum) (V4e mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (((F3 V2d) V3c) V4e) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F4 V4e)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2d) (mono_2Ec_2Enum_2ESUC (_let_1 V3c)))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2d)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V4e) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum) (V3c mono_2Etyop_2Enum_2Enum)) (= ((F2 V2d) V3c) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((F3 V2d) V3c)) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V3c)) V2d)))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2d mono_2Etyop_2Enum_2Enum)) (= ((F1 V1p) V2d) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F2 V2d)) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)))))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (F0 V1p) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F1 V1p)) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elogroot_2EiSQRT3 V0n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 F0) (mono_2Ec_2Elogroot_2ESQRTd V0n)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0a))) (= ((mono_2Ec_2Earithmetic_2EEXP (_let_1 V1b)) V2c) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1b) V2c))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V1a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2b) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1a)) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EEXP V1a) V0n)) V2b)) ((mono_2Ec_2Earithmetic_2E_2B V0n) (_let_1 V2b)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_246 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum)) (_let_246 c_2Epred__set_2EINSERT_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EIGNORE__BIND_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EIGNORE__BIND_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Elogroot_2EROOT V0r) V1n))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0r) (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC _let_1)) V0r)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0r)) V1n))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1f_2E0 u) (V2l_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Erich__list_2ECOUNT__LIST V3n))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((s (_let_3 tyop_2Enum_2Enum)) V1f_2E0))) (let ((_let_5 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((c_2Elist_2EMAP_2E2 _let_4) _let_2))))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 ((s (_let_6 (_let_6 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Earithmetic_2E_3C_3D))) _let_4))) _let_2))) ((mono_2Ec_2Esorting_2EPERM_2Emono_2Etyop_2Enum_2Enum _let_5) _let_1)) (= _let_5 _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Equotient_2E_3F_21_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Equotient_2E_3F_21_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= (_let_245 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_245 c_2Ebool_2ECOND_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_2) _let_1))) (= mono_2Ec_2Ebool_2ET (exists ((V2v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_2) _let_1))) (= (forall ((V3v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V3v_2E0))))) mono_2Ec_2Ebool_2EF))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V0x_2E0)) (_let_3 V1y_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V3r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_1))) (= (= (_let_7 ((app_2E2 _let_4) _let_5)) (_let_7 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0v_2E0 u) (V1rows_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V0v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_5)))) (let ((_let_7 (_let_6 V1rows_2E0))) (let ((_let_8 (s tyop_2Enum_2Enum))) (let ((_let_9 (_let_8 (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2i) (j_mono_2Etyop_2Enum_2Enum (_let_8 (c_2Elist_2ELENGTH_2E1 _let_7)))) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Emin_2Ebool V2i) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) ((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO_2E2 _let_3) _let_7)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s _let_10) ((app_2E2 ((s (_let_4 _let_10)) F0_2E0)) _let_3))) (_let_6 ((c_2Elist_2ETAKE_2E2 _let_9) _let_7))))) (= (_let_2 ((app_2E2 ((s _let_5) ((c_2Elist_2EEL_2E2 _let_9) _let_7))) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2EEXP _let_1) ((mono_2Ec_2Elogroot_2ELOG _let_1) V0n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= V0n ((mono_2Ec_2Earithmetic_2E_2B _let_2) ((mono_2Ec_2Earithmetic_2EMOD V0n) _let_2))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2s_27_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Eper_2E2 (_let_2 V1s_2E0)) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Eper_2E2 _let_3) (_let_4 ((c_2Eset__relation_2Eper__restrict_2E2 _let_5) _let_3))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 (s A_27b))) (and (= (_let_3 V0y_2E0) (_let_3 ((app_2E2 ((s (_let_1 A_27b)) V2f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EIMAGE_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s A_27b) V0y_2E0))))))) (forall ((F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum)) (= (= V2d mono_2Ec_2Enum_2E0) (F2 V2d))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_1))))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)))) (= ((F1 V1p) V2d) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F2 V2d)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum _let_3) (mono_2Ec_2Enum_2ESUC (_let_2 (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC _let_3)) (_let_2 ((mono_2Ec_2Earithmetic_2E_2D V2d) (mono_2Ec_2Earithmetic_2ENUMERAL _let_1)))))))))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (F0 V1p) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F1 V1p)) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elogroot_2EiSQRT1 V0n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 F0) (mono_2Ec_2Elogroot_2ESQRTd V0n)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2ETHE_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2ETHE_2E0)) _let_3)))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1x) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1x) V2y) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1x)) (_let_1 V2y)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Epred__set_2EPREIMAGE_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 V1s_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_6) _let_2)))) (_let_5 ((c_2Epred__set_2EDIFF_2E2 (_let_5 (_let_4 _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Ecardinal_2Elist_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s _let_1) c_2Elist_2ENIL_2E0)) (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (_let_2 c_2Eoption_2ENONE_2E0))))) (= (_let_1 c_2Ellist_2ELNIL_2E0) (_let_1 (c_2Ellist_2Ellist__abs_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) F0_2E0))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0m) V1k)) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))))) (forall ((V3P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_5 (i_mono_2Etyop_2Enum_2Enum V1k))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_56 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_3F_21_2Emono_2Etyop_2Enum_2Enum)) (_let_56 c_2Ebool_2E_3F_21_2E0)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2ESUM__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (= (_let_243 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_243 c_2Ebool_2ELET_2E0)) (forall ((F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (((F5 V1a) V0b) V7t) (and (V1a V7t) (not (V0b V7t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1a) V0b) V6t) (and (not (V0b V6t)) (V1a V6t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V4t)) (V1a V4t)) (((F2 V1a) V0b) V4t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V3t) (not (V0b V3t))) (((F1 V1a) V0b) V3t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (((F3 V1a) V0b) V5t) (and (V0b V5t) (V1a V5t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (((F0 V1a) V0b) V2t) (and (V1a V2t) (V0b V2t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (= ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EWHEN ((F0 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EUNTIL ((F1 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE ((F5 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F4 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESWHEN ((F3 V1a) V0b)) V0b)) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F2 V1a) V0b)) V0b))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V0m))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (= (_let_1 V1n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Enum_2ESUC (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V1n) V0m)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2EerrorStateMonad_2EUNIT_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0l1_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V0a) V1t0) (exists ((V2t mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V2t) V1t0) (V0a V2t))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1b)) (= (= ((mono_2Ec_2Elogroot_2ELOG V0a) V1b) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C V1b) V0a)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d)) (and (forall ((V4f_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Efcp_2Ebit1__size_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V4f_2E0)) ((s (tyop_2Efcp_2Ebit1 A_27a)) c_2Efcp_2EBIT1C_2E0)))) mono_2Ec_2Enum_2E0)) (forall ((V2f_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V2f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Efcp_2Ebit1__size_2E2 _let_2) ((s (tyop_2Efcp_2Ebit1 A_27a)) (c_2Efcp_2EBIT1B_2E1 _let_1))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1))))))))) (forall ((V0f_2E0 u) (V1a_2E0 u)) (let ((_let_1 ((s A_27a) V1a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2Efcp_2Ebit1__size_2E2 _let_2) ((s (tyop_2Efcp_2Ebit1 A_27a)) (c_2Efcp_2EBIT1A_2E1 _let_1))))) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELDROP_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)) c_2Ellist_2ELDROP_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0R_2E0 u) (V1R_27_2E0 u) (V2ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 (_let_3 V0R_2E0)) _let_1))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2ls_2E0))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1R_27_2E0)) _let_3))) _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2ESORTED_2E2 (_let_3 V1R_27_2E0)) _let_1))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) (_let_1 (mono_2Ec_2Enum_2ESUC V2p))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V2p)) V1n)) (= ((mono_2Ec_2Elogroot_2ELOG V0a) V1n) V2p)))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0a) (= ((mono_2Ec_2Elogroot_2ELOG V0a) V0a) _let_1)))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2EROOT V0r))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0r) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1x) V2y) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1x)) (_let_1 V2y)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27c))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2Equotient_2E_2D_2D_3E_2E3 _let_7) _let_4) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_7))) _let_4))) _let_2))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0)))) (forall ((V1P_2E0 u)) (= (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0))))) (exists ((V3x_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0)))) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0_3C_3C_2E0)) _let_2))) (_let_1 V3x_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_3 (c_2Elist_2ELAST_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))) (_let_3 (c_2Elist_2ELAST_2E1 _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1p_2E0 u) (V3g_2E0 u) (V2i_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V4x_2E0))) (let ((_let_2 ((s A_27a) V2i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3g_2E0))) (let ((_let_7 (_let_3 A_27a))) (let ((_let_8 ((s _let_7) V1p_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1)))))))))))))))) (forall ((V0r_2E0 u) (V1p_2E0 u) (V2i_2E0 u) (V3g_2E0 u)) (let ((_let_1 ((s A_27a) V2i_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3g_2E0))) (let ((_let_6 (_let_2 A_27a))) (let ((_let_7 ((s _let_6) V1p_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((s (_let_2 A_27c)) V0r_2E0))) (let ((_let_11 (s (tyop_2Eoption_2Eoption A_27c)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_1) _let_7) _let_5))) (= (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_7) _let_5) _let_10) _let_1)) (_let_11 (c_2Eoption_2ESOME_2E1 ((s A_27c) ((app_2E2 _let_10) ((s A_27b) (c_2Emin_2E_40_2E1 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_5))) _let_1)))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0a_2E0 u) (V1b_2E0 u) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2i)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27c) A_27b))) (let ((_let_3 ((s _let_2) V1b_2E0))) (let ((_let_4 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_5 ((s _let_4) V0a_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_3))) _let_1)) (_let_7 ((c_2Epair_2E_2C_2E2 ((s A_27a) ((c_2Efcp_2Efcp__index_2E2 _let_5) _let_1))) ((s A_27c) ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1))))))))))))))) (forall ((V0a_2E0 u) (V1b_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27c) A_27b))) (let ((_let_2 ((s _let_1) V1b_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_4 ((s _let_3) V0a_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s ((tyop_2Efcp_2Ecart _let_5) A_27b)))) (= (_let_8 ((c_2Efcp_2EFCP__ZIP_2E2 _let_4) _let_2)) (_let_8 (c_2Efcp_2EFCP_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (forall ((V1f_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s A_27a) V2p_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Enum_2Enum)) V1f_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0P_2E0))) (=> (and (forall ((V3q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3q_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 tyop_2Enum_2Enum)) V1f_2E0)))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0P_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 (_let_1 V2p_2E0)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_5)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_3) _let_5))) ((mono_2Ec_2Earithmetic_2E_2A (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_5)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (((mono_2Ec_2Egcd_2Eis__gcd V0a) V0a) V0a)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V1))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (and (forall ((V1y mono_2Etyop_2Enum_2Enum)) ((V0P mono_2Ec_2Enum_2E0) V1y)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) ((V0P (mono_2Ec_2Enum_2ESUC V2x)) mono_2Ec_2Enum_2E0)) (forall ((V3x mono_2Etyop_2Enum_2Enum) (V4y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V4y))) (let ((_let_2 (V0P (mono_2Ec_2Enum_2ESUC V3x)))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_3C_3D V4y) V3x))) (=> (and (=> (not _let_3) (_let_2 ((mono_2Ec_2Earithmetic_2E_2D V4y) V3x))) (=> _let_3 ((V0P ((mono_2Ec_2Earithmetic_2E_2D V3x) V4y)) _let_1))) (_let_2 _let_1))))))) (forall ((V5v mono_2Etyop_2Enum_2Enum) (V6v1 mono_2Etyop_2Enum_2Enum)) ((V0P V5v) V6v1)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (((mono_2Ec_2Egcd_2Eis__gcd V0a) V1b) ((mono_2Ec_2Egcd_2Egcd V0a) V1b))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum) (V3d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Egcd_2Eis__gcd V0a) V1b))) (=> (and (_let_1 V2c) (_let_1 V3d)) (= V2c V3d)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V2k))) (= ((mono_2Ec_2Egcd_2Egcd (_let_1 V0m)) (_let_1 V1n)) (_let_1 ((mono_2Ec_2Egcd_2Egcd V0m) V1n))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0l_2E0 u) (V2P_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((s _let_5) V0l_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Enum_2Enum))) (let ((_let_10 (_let_9 (i_mono_2Etyop_2Enum_2Enum V3i)))) (= (and ((mono_2Ec_2Eprim__rec_2E_3C V3i) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_6)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 _let_4) _let_10))) ((s A_27b) ((c_2Elist_2EEL_2E2 _let_10) _let_6)))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) F0_2E0)) _let_6))) _let_4))) V3i))))))))))))) (=> (forall ((V1k_2E0 u) (V0l_2E0 u) (V4i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4i)))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 ((s _let_7) V1k_2E0))) (let ((_let_9 (s A_27a))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_11 (_let_5 _let_10))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F1_2E0)) _let_8))) _let_3))) _let_4)) (_let_9 ((app_2E2 ((s _let_6) ((app_2E2 _let_8) (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3))))) (_let_2 ((c_2Elist_2EDROP_2E2 _let_4) _let_3))))))))))))))))) (forall ((V0l_2E0 u) (V1k_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V1k_2E0))) (let ((_let_8 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_9 (_let_8 A_27a))) (let ((_let_10 (_let_4 _let_9))) (let ((_let_11 (s A_27a))) (let ((_let_12 (_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_13 ((s _let_12) V2P_2E0))) (let ((_let_14 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_15 ((tyop_2Emin_2Efun _let_12) _let_14))) (= (_let_11 (((c_2Elist_2EsplitAtPki_2E3 _let_13) _let_7) _let_3)) (_let_11 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Ewhile_2EOLEAST (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_4 _let_15)) F0_2E0)) _let_3))) _let_13))))))) (_let_11 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_3))) (_let_2 c_2Elist_2ENIL_2E0)))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_3)))))))))))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides ((mono_2Ec_2Egcd_2Egcd V0a) V1b)))) (and (_let_1 V0a) (forall ((V2d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V2d))) (=> (and (_let_1 V1b) (_let_1 V0a)) (_let_1 ((mono_2Ec_2Egcd_2Egcd V0a) V1b))))) (_let_1 V1b)))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2ord_2E0 u) (V3h_2E0 u) (V10y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3h_2E0))) (let ((_let_3 (_let_1 V10y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2ord_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F1_2E0)) _let_8))) _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2))))))))))))))) (=> (forall ((V2ord_2E0 u) (V3h_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3h_2E0))) (let ((_let_3 (_let_1 V7y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2ord_2E0))) (let ((_let_9 (s _let_5))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) F0_2E0)) _let_8))) _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_9 ((app_2E2 _let_8) _let_3))) _let_2))))))))))))))) (forall ((V0P_2E0 u)) (=> (and (forall ((V1ord_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V1ord_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))) (forall ((V2ord_2E0 u) (V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (forall ((V8l1_2E0 u) (V9l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2ord_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (= (_let_11 ((c_2Epair_2E_2C_2E2 _let_3) (_let_2 V9l2_2E0))) (_let_11 ((c_2Esorting_2EPARTITION_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s (_let_10 _let_6)) F1_2E0)) _let_8))) ((s A_27a) V3h_2E0)))) (_let_2 V4t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) V0P_2E0)) _let_8))) _let_3)))))))))))))))) (forall ((V5l1_2E0 u) (V6l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6l2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V2ord_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_6))) (let ((_let_11 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (=> (= (_let_11 ((c_2Epair_2E_2C_2E2 (_let_2 V5l1_2E0)) _let_3)) (_let_11 ((c_2Esorting_2EPARTITION_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s (_let_10 _let_6)) F0_2E0)) _let_8))) ((s A_27a) V3h_2E0)))) (_let_2 V4t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_10 _let_9)) V0P_2E0)) _let_8))) _let_3))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) V0P_2E0)) ((s _let_4) V2ord_2E0)))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) (_let_2 V4t_2E0)))))))))))))) (forall ((V11v_2E0 u) (V12v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V11v_2E0)))) ((s _let_1) V12v1_2E0)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and _let_242 (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1s (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1s) (= (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0x) V1s)) ((mono_2Ec_2Earithmetic_2E_2B V0x) (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum V1s) V0x))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27a))) (= (_let_9 (((c_2Epred__set_2ELINV_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2ELINV_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Egcd V0m))) (=> (= (_let_1 V2k) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V2k) V1n)) (_let_1 V1n))))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 ((s (tyop_2Ellist_2Ellist A_27a)) V0x_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1x_27))))) (forall ((V2llength__rel_27_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (forall ((V3a0_2E0 u) (V4a1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3a0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> (or (exists ((V5h_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7t_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (and (= (_let_2 V3a0_2E0) (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V5h_2E0)) _let_3))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V2llength__rel_27_2E0)) _let_3))) V6n) (= V4a1 (mono_2Ec_2Enum_2ESUC V6n)))))))) (and (= _let_3 (_let_2 c_2Ellist_2ELNIL_2E0)) (= V4a1 mono_2Ec_2Enum_2E0))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) V2llength__rel_27_2E0)) _let_3))) V4a1))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V2llength__rel_27_2E0)) ((s _let_1) V0x_2E0)))) V1x_27))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (and (forall ((V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Egcd V2a))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3b) V2a)) (_let_1 V3b)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Egcd V0a))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0a) V1b)) (_let_1 V1b))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f1_2E0 u) (V7f2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V7f2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_1 _let_4)) V0R1_2E0))) (let ((_let_6 (c_2Ebool_2ERES__ABSTRACT_2E2 ((s _let_4) (c_2Equotient_2Erespects_2E1 _let_5))))) (let ((_let_7 (_let_2 V6f1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27b))) (let ((_let_9 ((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_5) ((s (_let_8 (_let_8 tyop_2Emin_2Ebool))) V3R2_2E0)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_2 (_let_6 _let_7))) (_let_2 (_let_6 _let_3))))))))))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd V0a) mono_2Ec_2Enum_2E0) V0a)) (forall ((V0P (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_3)))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 _let_3))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT1 _let_5))) (let ((_let_7 (mono_2Ec_2Earithmetic_2EBIT2 _let_5))) (let ((_let_8 (mono_2Ec_2Earithmetic_2EBIT2 _let_2))) (let ((_let_9 (mono_2Ec_2Earithmetic_2EBIT1 _let_8))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 _let_8))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_12 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_11)))) (let ((_let_13 (mono_2Ec_2Earithmetic_2EBIT2 _let_11))) (let ((_let_14 (mono_2Ec_2Earithmetic_2EBIT2 _let_13))) (let ((_let_15 (mono_2Ec_2Earithmetic_2EBIT1 _let_13))) (let ((_let_16 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_1)))) (let ((_let_17 (mono_2Ec_2Earithmetic_2EBIT1 _let_16))) (=> (and (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_9)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_10)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_17)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_17)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_16))))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_4)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_12)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_15)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_15)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_14)))) (forall ((V1v24 mono_2Etyop_2Estring_2Echar)) (V0P V1v24)) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_14)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_12)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_7)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_7)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_6)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_6)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_4)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_10)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_9)))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_7))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_6))) (V0P (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL _let_4)))) (forall ((V2v mono_2Etyop_2Estring_2Echar)) (V0P V2v))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) (_let_4 _let_2)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_5)) _let_2))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2EFOLDR_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_3)))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EIMAGE_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EIMAGE_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (= V0a mono_2Ec_2Enum_2E0) (F0 V0a))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd V0a) V1b) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V0a)) V1b) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2EMOD V1b) V0a)) V0a)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= ((mono_2Ec_2Egcd_2Elcm V0x) _let_1) V0x) (= ((mono_2Ec_2Egcd_2Elcm _let_1) V0x) V0x)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u) (V2x_27_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V2x_27_27_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 V1x_27_2E0))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_3) _let_7) _let_5)) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_3))) _let_7) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) ((s A_27a) (c_2Elist_2EHD_2E1 _let_3))))) (_let_2 (c_2Elist_2ETL_2E1 _let_3))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V1m) (_let_1 V0n)) (forall ((V2p mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2p) ((mono_2Ec_2Eprim__rec_2E_3C V2p) ((mono_2Ec_2Egcd_2Elcm V1m) V0n))) (or (not ((mono_2Ec_2Edivides_2Edivides V1m) V2p)) (not ((mono_2Ec_2Edivides_2Edivides V0n) V2p)))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= ((mono_2Ec_2Egcd_2Egcd V0x) _let_1) _let_1) (= ((mono_2Ec_2Egcd_2Egcd _let_1) V0x) _let_1)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2Epairwise_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2Epairwise_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (= mono_2Ec_2EASCIInumbers_2Enum__from__hex__string ((mono_2Ec_2EASCIInumbers_2Es2n _let_241) mono_2Ec_2EASCIInumbers_2EUNHEX)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (and (forall ((V0y mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd mono_2Ec_2Enum_2E0) V0y) V0y)) (forall ((V2y mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Egcd (mono_2Ec_2Enum_2ESUC V3x)))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V2y))) (= (_let_1 _let_2) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V2y) V3x)) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2D V3x) V2y)) _let_2)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V2y) V3x))))))) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V1x))) (= ((mono_2Ec_2Egcd_2Egcd _let_1) mono_2Ec_2Enum_2E0) _let_1)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n mono_2Ec_2Enum_2E0)) (exists ((V2p mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V2p) V0n) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3q) V1m)) ((mono_2Ec_2Egcd_2Egcd V1m) V0n)))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (((mono_2Ec_2Egcd_2Eis__gcd V0a) mono_2Ec_2Enum_2E0) V0a)) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2ESBEFORE _let_1) V0b)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0l_2E0))) (let ((_let_5 (_let_1 (c_2Ellist_2ELREPEAT_2E1 _let_4)))) (let ((_let_6 (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (and (= (= _let_2 _let_5) _let_6) (= _let_6 (= _let_5 _let_2)))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Egcd V0a))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0a) V1b)) (_let_1 V1b)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V3l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s A_27a))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_5 V1x_2E0)))) (let ((_let_7 (c_2Elist_2ECONS_2E2 (_let_5 V0y_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_6 (_let_1 (_let_7 _let_3))))) (_let_1 (_let_7 (_let_1 (_let_6 _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 A_27b)))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (= (_let_3 ((c_2Etransfer_2EFUN__REL_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0)) ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0))) (_let_3 c_2Emin_2E_3D_2E0))))))) (= (_let_240 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 mono_2Ec_2Eoption_2Esome_2Emono_2Etyop_2Emin_2Ebool)) (_let_240 c_2Eoption_2Esome_2E0)) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (and (forall ((V1y mono_2Etyop_2Enum_2Enum)) ((V0P mono_2Ec_2Enum_2E0) V1y)) (forall ((V4x mono_2Etyop_2Enum_2Enum)) ((V0P V4x) V4x)) (forall ((V5x mono_2Etyop_2Enum_2Enum) (V6y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0P V5x))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V6y) (_let_2 V6y) (_let_2 V5x)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V5x) V6y)))))) (forall ((V2x mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum)) (=> ((V0P V2x) V3y) ((V0P V3y) V2x)))) (forall ((V7m mono_2Etyop_2Enum_2Enum) (V8n mono_2Etyop_2Enum_2Enum)) ((V0P V7m) V8n)))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Egcd_2Eis__gcd V0a) V1b) V2c) (((mono_2Ec_2Egcd_2Eis__gcd V1b) V0a) V2c))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (and (forall ((V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2B V3b) V2a)) V2a) ((mono_2Ec_2Egcd_2Egcd V2a) V3b))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2B V0a) V1b)) V0a) ((mono_2Ec_2Egcd_2Egcd V0a) V1b)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 (_let_3 tyop_2Emin_2Ebool))) (_let_2 (_let_2 _let_1)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd V0a) V0a) V0a)) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V0R_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) F1_2E0)) ((s _let_4) V1s_2E0)))) ((s _let_3) V0R_2E0)))) ((s A_27b) V5y_2E0)))) (exists ((V6x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s A_27a) V6x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_1 _let_4)) V0R_2E0)) _let_2))) ((s A_27b) V5y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))))))))))))))))) (=> (forall ((V1s_2E0 u) (V0R_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V0R_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) V1s_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 (_let_9 _let_3))) (let ((_let_11 (tyop_2Emin_2Efun _let_7))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_2 _let_12))) (let ((_let_15 (_let_9 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_11 _let_15)) F0_2E0)) _let_8))) _let_6))) _let_1)) (_let_13 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_8))) _let_6))) _let_1))))))))))))))))))))) (forall ((V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 (_let_4 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_6) _let_7))) (=> (forall ((V2x_2E0 u) (V3y_2E0 u) (V4y_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4y_27_2E0))) (let ((_let_3 (_let_1 V3y_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (app_2E2 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) V0R_2E0)) _let_4))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_4) ((s (_let_6 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3)))) (= _let_3 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardleq_2E2 ((s _let_5) (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) F0_2E0)) _let_3))) ((s _let_6) V0R_2E0)))))) _let_3)))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (((mono_2Ec_2Egcd_2Eis__gcd mono_2Ec_2Enum_2E0) V0a) V0a)) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Egcd_2Eis__gcd V0a))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1b) ((_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1b) V0a)) V2c)) ((_let_1 V1b) V2c)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Enum_2Enum V0x) V1l)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ESUM V1l)) V0x))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd V0a) V1b) ((mono_2Ec_2Egcd_2Egcd V1b) V0a))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Egcd_2Elcm V0x) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Egcd_2Elcm mono_2Ec_2Enum_2E0) V0x) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1b) V0a) (((mono_2Ec_2Egcd_2Eis__gcd ((mono_2Ec_2Earithmetic_2E_2D V0a) V1b)) V1b) V2c)) (((mono_2Ec_2Egcd_2Eis__gcd V0a) V1b) V2c))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERC_2E0)) _let_4)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> (and (not (= V1m mono_2Ec_2Enum_2E0)) (not (= V0n mono_2Ec_2Enum_2E0))) (exists ((V2p mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Egcd_2Egcd V0n) V1m))) (and (= V0n ((mono_2Ec_2Earithmetic_2E_2A V2p) _let_1)) (= V1m ((mono_2Ec_2Earithmetic_2E_2A V3q) _let_1)) (= ((mono_2Ec_2Egcd_2Egcd V2p) V3q) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0AB_2E0 u) (V1CD_2E0 u) (V2a_2E0 u) (V3c_2E0 u) (V4b_2E0 u) (V5d_2E0 u)) (let ((_let_1 ((s A_27d) V5d_2E0))) (let ((_let_2 ((s A_27b) V4b_2E0))) (let ((_let_3 ((s A_27c) V3c_2E0))) (let ((_let_4 ((s A_27a) V2a_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) V1CD_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) V0AB_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2Etransfer_2EPAIR__REL_2E4 _let_8) _let_6) ((s ((tyop_2Epair_2Eprod A_27a) A_27c)) ((c_2Epair_2E_2C_2E2 _let_4) _let_3))) ((s ((tyop_2Epair_2Eprod A_27b) A_27d)) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a)))) _let_3))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2EerrorStateMonad_2EMMAP_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_5))))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Elcm V1a) V0b) ((mono_2Ec_2Egcd_2Elcm V0b) V1a))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0p_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 ((c_2Ebool_2ERES__SELECT_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2)) (_let_3 (c_2Emin_2E_40_2E1 _let_2))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) F0_2E0)) _let_2) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd mono_2Ec_2Enum_2E0) V0a) V0a)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Edivides_2Eprime V0p) (or (= ((mono_2Ec_2Egcd_2Egcd V0p) V1b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Edivides_2Edivides V0p) V1b)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2B V0a) V1b)) V0a) ((mono_2Ec_2Egcd_2Egcd V0a) V1b))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Egcd_2Elcm V1m) V0n))) (and ((mono_2Ec_2Edivides_2Edivides V1m) _let_1) (forall ((V2p mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Edivides_2Edivides V0n) V2p) ((mono_2Ec_2Edivides_2Edivides V1m) V2p)) ((mono_2Ec_2Edivides_2Edivides ((mono_2Ec_2Egcd_2Elcm V1m) V0n)) V2p))) ((mono_2Ec_2Edivides_2Edivides V0n) _let_1)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Eind__type_2Erecspace A_27a)))) (= (_let_1 c_2Eind__type_2EBOTTOM_2E0) (_let_1 (c_2Eind__type_2Emk__rec_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) c_2Eind__type_2EZBOT_2E0)))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0P (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1Q Bool) (V2R (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (=> (forall ((V3v (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (V0P V3v) (= V1Q (V2R V3v)))) (= (and (exists ((V4v (-> mono_2Etyop_2Enum_2Enum Bool))) (V0P V4v)) V1Q) (exists ((V5v (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V2R V5v) (V0P V5v)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eind__type_2EZRECSPACE_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Eind__type_2Erecspace A_27a)) _let_1)) V0rep_2E0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 ((s (_let_2 A_27b)) V0f_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 (((c_2Epred__set_2ERINV_2E3 _let_4) _let_3) _let_1)) (_let_5 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (((c_2Epred__set_2ELINV__OPT_2E3 _let_4) _let_3) _let_1))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (V0f1_2E0 u) (V1f1_27_2E0 u) (V2f2_2E0 u) (V3f2_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V3f2_27_2E0))) (let ((_let_3 (_let_1 V1f1_27_2E0))) (let ((_let_4 (_let_1 V2f2_2E0))) (let ((_let_5 (_let_1 V0f1_2E0))) (= (and (= _let_4 _let_2) (= _let_5 _let_3)) (= (_let_1 ((c_2Eind__type_2EINJP_2E2 _let_5) _let_4)) (_let_1 ((c_2Eind__type_2EINJP_2E2 _let_3) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 ((c_2Erich__list_2EELL_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_5 ((c_2Elist_2EEL_2E2 _let_4) _let_2)))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (F0 V0n) (= V0n mono_2Ec_2Enum_2E0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u) (V2a_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a_2E0))) (= (_let_3 (((c_2Eind__type_2EFCONS_2E3 _let_4) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n)))) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V0n)))) _let_4) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))))) (forall ((V0b Bool) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1x))) (= ((mono_2Ec_2Eind__type_2ENUMSUM V0b) V1x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0b) (mono_2Ec_2Enum_2ESUC _let_1)) _let_1)))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Emin_2E_3D_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Emin_2E_3D_2E0)) _let_2))))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0))) (=> (forall ((V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eind__type_2EISO_2E2 _let_1) _let_1)))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (= ((mono_2Ec_2Esum__num_2ESUM V0n) V1f) mono_2Ec_2Enum_2E0) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V0n) (= (V1f V2m) mono_2Ec_2Enum_2E0))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s A_27a) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s _let_1))) (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 _let_6) _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) c_2Eind__type_2ECONSTR_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a))))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2EerrorStateMonad_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EerrorStateMonad_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Estring_2Echar))) (= (_let_2 (i_mono_2Etyop_2Estring_2Echar (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Estring_2Echar)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Estring_2Echar_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELLEX_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1l1_2E0)) (_let_1 V2l2_2E0)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (_let_1 V2l2_2E0))) (let ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_7 (c_2Elist_2ETAKE_2E2 _let_6))) (let ((_let_8 (c_2Elist_2EEL_2E2 _let_6))) (let ((_let_9 (s A_27a))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 (_let_10 tyop_2Emin_2Ebool))) (let ((_let_12 (mono_2Ec_2Eprim__rec_2E_3C V3n))) (and (_let_12 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_5)))) (=> (_let_12 _let_4) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) V0R_2E0)) (_let_9 (_let_8 _let_2))))) (_let_9 (_let_8 _let_5)))))) (= (_let_1 (_let_7 _let_2)) (_let_1 (_let_7 _let_5))) ((mono_2Ec_2Earithmetic_2E_3C_3D V3n) _let_4))))))))))))))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eind__type_2EISO_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eind__type_2EISO_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Esorting_2EPERM_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0P_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2t_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__FORALL_2E2 _let_3) _let_2))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_2 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0ZRECSPACE_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) ((s _let_1) c_2Eind__type_2EZBOT_2E0)))) (forall ((V1c mono_2Etyop_2Enum_2Enum) (V2i_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) V3r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) ((s _let_2) (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1c))) ((s A_27a) V2i_2E0)) ((s (_let_1 _let_2)) V3r_2E0))))))))))) (forall ((V5a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) V5a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eind__type_2EZRECSPACE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0)))) (exists ((V1l_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_1 V0x_2E0) (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V1l_2E0)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eind__type_2EINJN_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Eind__type_2EINJN_2E0)) _let_1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2ELIST__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eind__type_2EISO_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eind__type_2EISO_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebag_2EBAG__IN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebag_2EBAG__IN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0x1 mono_2Etyop_2Enum_2Enum) (V1y1 mono_2Etyop_2Enum_2Enum) (V2x2 mono_2Etyop_2Enum_2Enum) (V3y2 mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Eind__type_2ENUMPAIR V0x1) V1y1) ((mono_2Ec_2Eind__type_2ENUMPAIR V2x2) V3y2)) (and (= V1y1 V3y2) (= V0x1 V2x2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V0f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))))))))) (exists ((V4g_2E0 u)) (and (forall ((V6x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V4g_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_2)))) _let_2)))))) (forall ((V7x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V7x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V2t_2E0)))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) ((app_2E2 ((s (_let_3 A_27a)) V4g_2E0)) _let_2)))) _let_2)))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V4g_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epred__set_2Eenumerate_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epred__set_2Eenumerate_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V2r_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_2 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V2r_2E0))) (let ((_let_6 (_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_3 _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_1)) (_let_7 (c_2Eind__type_2Edest__rec_2E1 ((s _let_2) ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((V0c mono_2Etyop_2Enum_2Enum) (V1i_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2r_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s A_27a) V1i_2E0))) (let ((_let_8 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0c)))) (let ((_let_9 (s _let_1))) (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 _let_8) _let_7) _let_4)) (_let_9 (c_2Eind__type_2Emk__rec_2E1 ((s _let_5) (((c_2Eind__type_2EZCONSTR_2E3 _let_8) _let_7) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))))))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (= (_let_1 (c_2Eind__type_2EFNIL_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (_let_1 c_2Ebool_2EARB_2E0)))) (forall ((A_27a d) (V0f1_2E0 u) (V1f2_2E0 u) (V2x mono_2Etyop_2Enum_2Enum) (V3x_27_2E0 u)) (let ((_let_1 ((s A_27a) V3x_27_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eind__type_2ENUMRIGHT V2x))))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)))) (let ((_let_6 (_let_5 V1f2_2E0))) (let ((_let_7 (s _let_4))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 V0f1_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Eind__type_2EINJP_2E4 _let_9) _let_6) (_let_2 (i_mono_2Etyop_2Enum_2Enum V2x))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (mono_2Ec_2Eind__type_2ENUMLEFT V2x)) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_9) _let_3))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_3))) _let_1))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) V0x_2E0)))) (forall ((V1ZRECSPACE_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (forall ((V2a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2a0_2E0))) (=> (or (exists ((V3c mono_2Etyop_2Enum_2Enum) (V4i_2E0 u) (V5r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (and (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V1ZRECSPACE_27_2E0)) ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) V5r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))))))))) (= (_let_3 V2a0_2E0) (_let_3 (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3c))) ((s A_27a) V4i_2E0)) ((s (_let_1 _let_2)) V5r_2E0))))))))) (= _let_3 (_let_2 c_2Eind__type_2EZBOT_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1ZRECSPACE_27_2E0)) _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1ZRECSPACE_27_2E0)) ((s _let_1) V0x_2E0))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27A d) (A_27B d) (A_27C d) (V0P_2E0 u)) (=> (forall ((V1x1_2E0 u) (V2y1_2E0 u) (V3x2_2E0 u) (V4y2_2E0 u)) (let ((_let_1 (s A_27B))) (let ((_let_2 (_let_1 V4y2_2E0))) (let ((_let_3 (s A_27A))) (let ((_let_4 (_let_3 V3x2_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27B) A_27C))) (let ((_let_6 (app_2E2 ((s ((tyop_2Emin_2Efun A_27A) _let_5)) V0P_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s A_27C))) (let ((_let_9 (_let_1 V2y1_2E0))) (let ((_let_10 (_let_3 V1x1_2E0))) (= (and (= _let_10 _let_4) (= _let_9 _let_2)) (= (_let_8 ((app_2E2 (_let_7 (_let_6 _let_10))) _let_9)) (_let_8 ((app_2E2 (_let_7 (_let_6 _let_4))) _let_2))))))))))))))) (exists ((V5X_2E0 u) (V6Y_2E0 u)) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27A))) (let ((_let_2 (_let_1 V7x_2E0))) (let ((_let_3 (s A_27B))) (let ((_let_4 (_let_3 V8y_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27B) A_27C))) (let ((_let_6 ((s A_27C) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27A) _let_5)) V0P_2E0)) _let_2))) _let_4)))) (let ((_let_7 (tyop_2Emin_2Efun A_27C))) (and (= (_let_3 ((app_2E2 ((s (_let_7 A_27B)) V6Y_2E0)) _let_6)) _let_4) (= (_let_1 ((app_2E2 ((s (_let_7 A_27A)) V5X_2E0)) _let_6)) _let_2))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0g_27_2E0 u) (V3f_2E0 u) (V6h_2E0 u) (V7a_2E0 u)) (let ((_let_1 ((s A_27a) V7a_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V3f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_6 ((s _let_5) V6h_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_8 ((s _let_7) V0g_27_2E0))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_2 A_27b))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F1_2E0)) _let_8))) _let_4))) _let_6))) _let_1)) (_let_9 ((app_2E2 _let_8) ((s A_27d) ((app_2E2 _let_6) ((s A_27c) ((app_2E2 _let_4) _let_1)))))))))))))))))))) (=> (forall ((V1g_2E0 u) (V2f_27_2E0 u) (V4h_2E0 u) (V5a_27_2E0 u)) (let ((_let_1 ((s A_27c) V5a_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) V2f_27_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) V4h_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_8 ((s _let_7) V1g_2E0))) (let ((_let_9 (s A_27d))) (let ((_let_10 (_let_2 A_27d))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_4))) _let_6))) _let_1)) (_let_9 ((app_2E2 _let_8) ((s A_27b) ((app_2E2 _let_6) ((s A_27a) ((app_2E2 _let_4) _let_1)))))))))))))))))))) (forall ((V0g_27_2E0 u) (V1g_2E0 u) (V2f_27_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) V3f_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_5 ((s _let_4) V0g_27_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 (tyop_2Emin_2Efun A_27c))) (let ((_let_8 (_let_7 A_27d))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 (_let_7 A_27a))) (let ((_let_12 ((s _let_11) V2f_27_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_14 ((s _let_13) V1g_2E0))) (let ((_let_15 ((tyop_2Emin_2Efun _let_6) _let_8))) (let ((_let_16 ((tyop_2Emin_2Efun _let_11) _let_15))) (let ((_let_17 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((c_2Eind__type_2EISO_2E2 _let_14) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((c_2Eind__type_2EISO_2E2 _let_3) _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_17 ((c_2Eind__type_2EISO_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_13) _let_16)) F0_2E0)) _let_14))) _let_12))) ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_10)) F1_2E0)) _let_5))) _let_3))))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_5 (((c_2Eind__type_2EFCONS_2E3 _let_6) _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_7)) c_2Eind__type_2EFCONS_2E0)) _let_6))) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (and (= (_let_2 (c_2Ellist_2ELTL_2E1 ((s _let_1) c_2Ellist_2ELNIL_2E0))) (_let_2 c_2Eoption_2ENONE_2E0)) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_4 (c_2Ellist_2ELTL_2E1 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) V0h_2E0)) _let_3)))) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)))))))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (=> (forall ((V0z_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V0z_2E0)))) mono_2Ec_2Ebool_2ET))) (= (_let_2 c_2Eind__type_2EZBOT_2E0) (_let_2 ((c_2Eind__type_2EINJP_2E2 (_let_2 (c_2Eind__type_2EINJN_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (_let_2 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0g_2E0 u) (V1f_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eind__type_2EISO_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)))) (and (forall ((V5P_2E0 u)) (= (exists ((V7x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V5P_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)) ((s A_27b) V7x_2E0))))))) (exists ((V6x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V5P_2E0)) ((s A_27a) V6x_2E0))))))) (forall ((V8a_2E0 u) (V9b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V9b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V8a_2E0))) (= (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_4)) _let_2) (= _let_4 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)) _let_2))))))))) (forall ((V2P_2E0 u)) (= (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0)) ((s A_27b) V4x_2E0))))))) (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27a) V3x_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1r_2E0 u) (V2rs_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V2rs_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (s _let_1))) (let ((_let_7 ((s A_27a) V0v_2E0))) (let ((_let_8 ((s _let_2) V1r_2E0))) (let ((_let_9 (c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 _let_7))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_3 ((c_2Elist_2ECONS_2E2 _let_8) _let_4))) (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3i)))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 _let_4) (_let_5 (i_mono_2Etyop_2Enum_2Enum V3i))))) (and (not (= (_let_6 ((app_2E2 _let_8) _let_7)) (_let_6 c_2Eoption_2ENONE_2E0))) ((mono_2Ec_2Eprim__rec_2E_3C V3i) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Eind__type_2Erecspace A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V3x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27b) V3x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0P_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (exists ((V4y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (_let_1 V1s_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27b) V4y_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 (_let_1 V1s_2E0)) (_let_1 F0_2E0))))))))) (= (_let_239 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum)) (_let_239 c_2Ecombin_2EI_2E0)) (forall ((A_27a d)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) c_2Eind__type_2EZBOT_2E0)))) (forall ((V0c mono_2Etyop_2Enum_2Enum) (V1i_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) V2r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 ((s _let_2) (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0c))) ((s A_27a) V1i_2E0)) ((s (_let_1 _let_2)) V2r_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V4r_2E0 u) (V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_2 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) V4r_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_7 ((s _let_6) V1f_2E0))) (let ((_let_8 (s A_27b))) (let ((_let_9 (_let_3 A_27b))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_5))) _let_1)) (_let_8 ((app_2E2 _let_7) ((s _let_2) ((app_2E2 _let_5) _let_1)))))))))))))))) (forall ((V0Fn_2E0 u)) (exists ((V1f_2E0 u)) (forall ((V2c mono_2Etyop_2Enum_2Enum) (V3i_2E0 u) (V4r_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V4r_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s A_27a) V3i_2E0))) (let ((_let_11 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2c)))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) A_27b))) (let ((_let_13 (_let_8 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun A_27a) _let_13))) (let ((_let_15 (s A_27b))) (= (_let_15 ((app_2E2 _let_6) ((s _let_1) (((c_2Eind__type_2ECONSTR_2E3 _let_11) _let_10) _let_4)))) (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_2 _let_14)) V0Fn_2E0)) _let_11))) _let_10))) _let_4))) ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_6))) _let_4))))))))))))))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eind__type_2EISO_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eind__type_2EISO_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2t_2E0 u) (V3s_2E0 u) (V4b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 ((s A_27b) V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V3s_2E0))) (let ((_let_7 ((s A_27a) V1x_2E0))) (let ((_let_8 (s (_let_4 A_27b)))) (let ((_let_9 (_let_8 V4b_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_9) _let_6) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2EIN_2E2 _let_7) _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 (_let_8 (((c_2Ecombin_2EUPDATE_2E3 _let_7) _let_3) _let_9))) (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_7) _let_6))) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EISR_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EISR_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Epred__set_2ESUM__IMAGE_2Emono_2Etyop_2Enum_2Enum V1f) (mono_2Ec_2Epred__set_2Ecount V0n)) (mono_2Ec_2Elist_2ESUM ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum V1f) V0n)))) (forall ((A_27a d)) (= (forall ((V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2EPSUBSET_2E2 _let_2) (_let_1 c_2Epred__set_2EUNIV_2E0))))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eind__type_2EISO_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Eind__type_2EISO_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f1_2E0 u) (V1f2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V1f2_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_3 V0f1_2E0))) (= (= _let_6 _let_4) (= (_let_5 (c_2Eind__type_2EINJF_2E1 _let_6)) (_let_5 (c_2Eind__type_2EINJF_2E1 _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (_let_3 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (s _let_2))) (= (_let_7 ((c_2Eind__type_2EINJF_2E2 _let_6) _let_1)) (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_4)) c_2Eind__type_2EINJF_2E0)) _let_6))) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eind__type_2Emk__rec_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eind__type_2Emk__rec_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1l_27_2E0 u) (V2b_2E0 u) (V3b_27_2E0 u) (V4f_2E0 u) (V5f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_27_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V3b_27_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27b))))) (let ((_let_6 (_let_1 V0l_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (=> (and (= _let_6 _let_2) (= _let_7 _let_4) (forall ((V6x_2E0 u) (V7a_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V7a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) _let_5)))) (let ((_let_7 (s _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_27_2E0)))))) (= (_let_2 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V4f_2E0)) _let_3))) _let_1)) (_let_2 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5f_27_2E0)) _let_3))) _let_1))))))))))))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 (_let_5 V4f_2E0)) _let_7) _let_6)) (_let_3 (((c_2Elist_2EFOLDL_2E3 (_let_5 V5f_27_2E0)) _let_4) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Eind__type_2EINJP_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Eind__type_2EINJP_2E0)) _let_4))) _let_3)))))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (mono_2Ec_2Erich__list_2EOR__EL V0l) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) V0l))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_4 (_let_2 (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Eind__type_2EINJN_2E3 _let_4) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Eind__type_2EINJN_2E0)) _let_4))) _let_3))) _let_1))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))) (forall ((V0x Bool) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Eind__type_2ENUMSUM V0x) V1y))) (and (= (mono_2Ec_2Eind__type_2ENUMLEFT _let_1) V0x) (= (mono_2Ec_2Eind__type_2ENUMRIGHT _let_1) V1y)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ERTC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d)) (and (forall ((V0a_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (((c_2Eind__type_2EFCONS_2E3 _let_2) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2)))) (forall ((V2a_2E0 u) (V3f_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V3f_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (((c_2Eind__type_2EFCONS_2E3 (_let_3 V2a_2E0)) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V4n))))) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s (tyop_2Eind__type_2Erecspace A_27a)))) (=> (= (_let_5 (c_2Eind__type_2Emk__rec_2E1 _let_3)) (_let_5 (c_2Eind__type_2Emk__rec_2E1 _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eind__type_2EZRECSPACE_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eind__type_2EZRECSPACE_2E1 _let_2)))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (s (_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0P_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__EVERY_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) ((s (_let_1 tyop_2Enum_2Enum)) V1b_2E0)))) (forall ((V2e_2E0 u)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 _let_1) ((s (_let_2 tyop_2Enum_2Enum)) V1b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0P_2E0)) _let_1))))))))))) (forall ((A_27a d)) (and (forall ((V0a_2E0 u)) (let ((_let_1 (s (tyop_2Eind__type_2Erecspace A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Eind__type_2Emk__rec_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (c_2Eind__type_2Edest__rec_2E1 _let_2)))) _let_2)))) (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Eind__type_2Edest__rec_2E1 ((s (tyop_2Eind__type_2Erecspace A_27a)) (c_2Eind__type_2Emk__rec_2E1 _let_2)))) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V1ll_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Eevery_2E2 (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_4))) _let_2))) (= (_let_1 ((c_2Ellist_2ELFILTER_2E2 _let_4) _let_2)) (_let_1 c_2Ellist_2ELNIL_2E0)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1Q_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEVERY_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0c1 mono_2Etyop_2Enum_2Enum) (V1i1_2E0 u) (V2r1_2E0 u) (V3c2 mono_2Etyop_2Enum_2Enum) (V4i2_2E0 u) (V5r2_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (_let_2 V5r2_2E0))) (let ((_let_4 (_let_2 V2r1_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V4i2_2E0))) (let ((_let_7 (_let_5 V1i1_2E0))) (let ((_let_8 (s tyop_2Enum_2Enum))) (let ((_let_9 (s _let_1))) (= (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 (_let_8 (i_mono_2Etyop_2Enum_2Enum V0c1))) _let_7) _let_4)) (_let_9 (((c_2Eind__type_2ECONSTR_2E3 (_let_8 (i_mono_2Etyop_2Enum_2Enum V3c2))) _let_6) _let_3))) (and (= V0c1 V3c2) (= _let_7 _let_6) (= _let_4 _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0i_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2Q_2E0)))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2x_27_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eind__type_2EINJN_2E3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1x))) ((s A_27a) V2x_27_2E0)))) (= V1x V0m)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Eind__type_2ENUMPAIR V0x) V1y) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0x)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A _let_1) V1y)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((A_27a d) (V0a0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0a0_2E0))) (= (or (= _let_2 (_let_1 c_2Eind__type_2EZBOT_2E0)) (exists ((V1c mono_2Etyop_2Enum_2Enum) (V2i_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (and (= (_let_3 V0a0_2E0) (_let_3 (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1c))) ((s A_27a) V2i_2E0)) ((s (_let_1 _let_2)) V3r_2E0)))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) V3r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eind__type_2EZRECSPACE_2E1 _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eind__type_2EZRECSPACE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eind__type_2EZRECSPACE_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_3))) (let ((_let_5 (_let_2 _let_3))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))))) (forall ((V0b1 Bool) (V1x1 mono_2Etyop_2Enum_2Enum) (V2b2 Bool) (V3x2 mono_2Etyop_2Enum_2Enum)) (= (and (= V1x1 V3x2) (= V0b1 V2b2)) (= ((mono_2Ec_2Eind__type_2ENUMSUM V0b1) V1x1) ((mono_2Ec_2Eind__type_2ENUMSUM V2b2) V3x2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (and (forall ((V1c mono_2Etyop_2Enum_2Enum) (V2i_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V3r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1c))) ((s A_27a) V2i_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V3r_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Eind__type_2EBOTTOM_2E0))))) (forall ((V5x_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V5x_2E0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) (tyop_2Elist_2Elist _let_1)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (= _let_2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (and (forall ((V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (= (_let_1 V0x_2E0) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eind__type_2EINJA_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Eind__type_2EINJA_2E0)) _let_1)))))))) (forall ((A_27a d) (V0ZRECSPACE_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) ((s _let_1) c_2Eind__type_2EZBOT_2E0)))) (forall ((V1c mono_2Etyop_2Enum_2Enum) (V2i_2E0 u) (V3r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) V3r_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n)))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eind__type_2EZRECSPACE_2E1 _let_3))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) ((s _let_2) (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1c))) ((s A_27a) V2i_2E0)) ((s (_let_1 _let_2)) V3r_2E0))))))))))) (forall ((V5a0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) V5a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eind__type_2EZRECSPACE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0ZRECSPACE_27_2E0)) _let_2))))))))))) (= (_let_238 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Estring_2Echar_29_29_29 mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Estring_2Echar)) (_let_238 c_2Elist_2Elist__CASE_2E0)) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eind__type_2EISO_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eind__type_2EISO_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b))) (= (and (not (V1b V0t0)) (or (V2a V0t0) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0))) (_let_1 V0t0)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3a Bool) (V4b_2E0 u) (V5c_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5c_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_1 V4b_2E0))) (let ((_let_6 (c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V3a))))) (= (_let_1 ((_let_6 _let_5) _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1abs_2E0)) (_let_4 ((_let_6 (_let_4 (_let_3 _let_5))) (_let_4 (_let_3 _let_2))))))))))))))))) (forall ((A_27a d) (V0c mono_2Etyop_2Enum_2Enum) (V1i_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (not (= (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0c))) ((s A_27a) V1i_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) V2r_2E0))) (_let_2 c_2Eind__type_2EBOTTOM_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (F0_2E0 u) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1_2E0 u)) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F0_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (_let_2 c_2Eoption_2ENONE_2E0))))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum)) (= (= V3n mono_2Ec_2Enum_2E0) (F2 V3n))) (=> (forall ((V1h_2E0 u) (V2t_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2t_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 ((s A_27a) V1h_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) F1_2E0)) _let_7))) _let_5))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n)))) (_let_6 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F2 V3n)))) (_let_6 (c_2Eoption_2ESOME_2E1 _let_7))) (_let_6 ((app_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V3n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))))))))) (and (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ellist_2Elrep__ok_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Ellist_2Elrep__ok_2E1 (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) F1_2E0)) ((s A_27a) V1h_2E0)))) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2Elrep__ok_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption A_27a))) F0_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eind__type_2EISO_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1g_2E0)))) (and (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1g_2E0)) _let_2)))) _let_2)))) (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1g_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_2)))) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (V0f_2E0 u) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s (_let_3 _let_4)) V0f_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Eind__type_2EINJF_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1x)))) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eind__type_2ENUMFST V1x)))))) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eind__type_2ENUMSND V1x))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0a_2E0 u) (V1x mono_2Etyop_2Enum_2Enum) (V2x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_27_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (= (= _let_2 _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eind__type_2EINJA_2E3 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1x))) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2ERES__FORALL_2E2 (_let_1 V2R_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2R_2E0)) _let_1))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1Q_2E0)))))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) _let_4) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Erich__list_2ELASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V1n)))) _let_2))))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0b) ((mono_2Ec_2Edivides_2Edivides V0b) (mono_2Ec_2Earithmetic_2EFACT V0b)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_4 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_2))) _let_3)) (_let_8 ((c_2Epair_2E_2C_2E2 _let_3) ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_6) _let_3))) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s (_let_3 tyop_2Emin_2Ebool)))) (= (_let_8 ((c_2Epred__set_2EPREIMAGE_2E2 _let_5) _let_2)) (_let_8 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_2)))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Edivides_2Edivides V0a) mono_2Ec_2Enum_2E0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_4))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_3) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epair_2E_2C_2E0)) _let_3))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b) V0t0) (forall ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V0t0) (exists ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (and (not (V3q _let_1)) (V2a _let_1) (V1b _let_1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (= V0m mono_2Ec_2Enum_2E0) ((mono_2Ec_2Edivides_2Edivides mono_2Ec_2Enum_2E0) V0m))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0a))) (=> (_let_1 V1b) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1b) V2c))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EDecode_2Ewf__decoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V2t) (V0b V2t)) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EWHEN ((F0 V1a) V0b)) V0b))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool (-> Bool Bool) Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool Bool) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0p mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Edivides_2Eprime V0p) (exists ((V1i mono_2Etyop_2Enum_2Enum)) (= V0p (mono_2Ec_2Edivides_2EPRIMES V1i))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1b) ((mono_2Ec_2Eprim__rec_2E_3C V1b) V0a)) (not ((mono_2Ec_2Edivides_2Edivides V0a) V1b)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Edivides_2EPRIMES V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0p mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Edivides_2Eprime V0p) (exists ((V1i mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Edivides_2EPRIMES V1i) V0p)))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1h mono_2Etyop_2Estring_2Echar) (V2t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V1h))) (let ((_let_2 (= V0s (_let_1 (mono_2Ec_2Estring_2EIMPLODE V2t))))) (let ((_let_3 (mono_2Ec_2Estring_2EEXPLODE V0s))) (let ((_let_4 (_let_1 V2t))) (and (= _let_2 (= _let_3 _let_4)) (= (= _let_4 _let_3) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Estate__transformer_2EBIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EBIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0a))) (=> (and (_let_1 V2c) (_let_1 V1b)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1b) V2c))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EWFP_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) ((s _let_2) V1M_2E0))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Edivides_2Edivides ((mono_2Ec_2Earithmetic_2E_2A V0n) V1m)) V1m) (or (= V0n (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= V1m mono_2Ec_2Enum_2E0)))) (mono_2Ec_2Edivides_2Eprime _let_219) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E0)) _let_6))) _let_5))) _let_3)))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (and (not (= V0a (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (forall ((V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Edivides_2Edivides V1b) V0a) (or (= V1b (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= V1b V0a))))) (mono_2Ec_2Edivides_2Eprime V0a))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (exists ((V1i mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Edivides_2EPRIMES V1i)) (forall ((V2j mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2j) V1i) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Edivides_2EPRIMES V2j)) V0n)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0i_2E0 u) (V3row_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V0i_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 ((s _let_5) V3row_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F0_2E0)) _let_3))) _let_6))) (not (= (_let_2 ((app_2E2 _let_6) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0)))))))))))) (forall ((V0i_2E0 u) (V1r_2E0 u) (V2rows_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s (tyop_2Elist_2Elist _let_3)) V2rows_2E0))) (let ((_let_5 ((s _let_3) V1r_2E0))) (let ((_let_6 ((s A_27a) V0i_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_1))) (let ((_let_9 (_let_8 ((app_2E2 _let_5) _let_6)))) (let ((_let_10 (s A_27b))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (= (or (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEXISTS_2E2 ((s _let_11) ((app_2E2 ((s (_let_2 _let_11)) F0_2E0)) _let_6))) _let_4))) (= (_let_10 (c_2Eoption_2ETHE_2E1 _let_9)) (_let_10 ((c_2EpatternMatches_2EPMATCH_2E2 _let_6) _let_4)))) (not (not (= _let_9 (_let_8 c_2Eoption_2ENONE_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_6) _let_5) _let_4)))))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Edivides_2Edivides V0a) V0a)) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1p mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Edivides_2EPRIMES V0n)) V1p) (mono_2Ec_2Edivides_2Eprime V1p) ((mono_2Ec_2Eprim__rec_2E_3C V1p) (mono_2Ec_2Edivides_2EPRIMES (mono_2Ec_2Enum_2ESUC V0n)))) mono_2Ec_2Ebool_2EF)) (forall ((V0s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V1s1) V0s2))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 X1)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELGENLIST_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELGENLIST_2E0)) _let_4))) _let_2))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Edivides_2EPRIMES V0m)) (mono_2Ec_2Edivides_2EPRIMES V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Estate__transformer_2Esequence_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Estate__transformer_2Esequence_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1seen_2E0 u) (V2h_2E0 u) (V3f_2E0 u) (V4acc_2E0 u) (V5G_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4acc_2E0))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 _let_4)) V3f_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((s (_let_5 _let_7)) V5G_2E0))) (let ((_let_9 (s _let_7))) (let ((_let_10 (_let_9 V0t_2E0))) (let ((_let_11 (_let_9 V1seen_2E0))) (let ((_let_12 (c_2Elist_2ECONS_2E2 _let_3))) (let ((_let_13 ((c_2Ebft_2EBFT_2E5 _let_8) _let_6))) (let ((_let_14 (_let_13 _let_11))) (let ((_let_15 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_16 (c_2Epred__set_2EFINITE_2E1 (_let_15 (c_2EdirGraph_2EParents_2E1 _let_8))))) (and (= (_let_1 ((_let_14 (_let_9 c_2Elist_2ENIL_2E0)) _let_2)) _let_2) (= (_let_1 ((_let_14 (_let_9 (_let_12 _let_10))) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_16 ((c_2Ebool_2EIN_2E2 _let_3) (_let_15 (c_2Elist_2ELIST__TO__SET_2E1 _let_11))))) (_let_1 ((_let_14 _let_10) _let_2))) (_let_1 (((_let_13 (_let_9 (_let_12 _let_11))) (_let_9 ((c_2Elist_2EAPPEND_2E2 _let_10) (_let_9 ((app_2E2 _let_8) _let_3))))) (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 _let_6) _let_3))) _let_2)))))))))))))))))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0a))) (=> (and (_let_1 V2c) (_let_1 V1b)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1b) V2c))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Eper_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Eset__relation_2Eper_2E0)) _let_5))) _let_4)))))))))))) (and (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral_2EiDUB) mono_2Ec_2Enum_2E0) V0x) V0x)) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral_2EiDUB) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2n))) V3x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral_2EiDUB)) (mono_2Ec_2Earithmetic_2ENUMERAL V2n)) (mono_2Ec_2Enumeral_2EiDUB V3x)))) (forall ((V4n mono_2Etyop_2Enum_2Enum) (V5x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral_2EiDUB) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V4n))) V5x) (((mono_2Ec_2Enumeral__bit_2ESFUNPOW (mono_2Ec_2Enumeral__bit_2EFDUB mono_2Ec_2Enumeral_2EiDUB)) (mono_2Ec_2Earithmetic_2ENUMERAL V4n)) (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Enumeral_2EiDUB V5x))))) (forall ((V1y mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral_2EiDUB) V1y) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (not (mono_2Ec_2Edivides_2Eprime mono_2Ec_2Enum_2E0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (mono_2Ec_2Edivides_2Eprime V1n) ((mono_2Ec_2Edivides_2Edivides V0m) V1n) (mono_2Ec_2Edivides_2Eprime V0m)) (= V0m V1n))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 _let_6) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E0)) _let_6))) _let_5))) _let_3)))))))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l2_2E0 u) (V2l1_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (_let_2 V3l_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_6 (_let_2 V2l1_2E0))) (let ((_let_7 (c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (=> (= (_let_5 (_let_7 _let_6)) (_let_5 (c_2Eoption_2ESOME_2E1 _let_4))) (= (_let_5 (_let_7 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_6) _let_3)))) (_let_5 (c_2Eoption_2ESOME_2E1 (_let_2 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1p mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1p) (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Edivides_2EPRIMES V0n)) V1p) (mono_2Ec_2Edivides_2Eprime V1p)))) (and (= (mono_2Ec_2Edivides_2EPRIMES mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Edivides_2EPRIMES (mono_2Ec_2Enum_2ESUC V0n)) (mono_2Ec_2Ewhile_2ELEAST (F0 V0n))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (= (mono_2Ec_2Edivides_2EPRIMES V0m) (mono_2Ec_2Edivides_2EPRIMES V1n)) (= V0m V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Edivides_2Edivides V0m) V1n) (or ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (= V1n mono_2Ec_2Enum_2E0)))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0a))) (=> (and (_let_1 V1b) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1b) V2c))) (_let_1 V2c)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (mono_2Ec_2Edivides_2EPRIMES V0n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (= V0a (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (F1 V0a))) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (F0 V0a) (= V0a mono_2Ec_2Enum_2E0))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (F0 V1b))) (= ((mono_2Ec_2Edivides_2Edivides V0a) V1b) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (F0 V0a)) _let_1) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (F1 V0a)) mono_2Ec_2Ebool_2ET) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool _let_1) mono_2Ec_2Ebool_2ET) (F0 ((mono_2Ec_2Earithmetic_2EMOD V1b) V0a))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (not (mono_2Ec_2Edivides_2Eprime _let_152)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOG2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n))) (mono_2Ec_2Enumeral__bit_2EiLOG2 (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOG2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (mono_2Ec_2Enumeral__bit_2EiLOG2 (mono_2Ec_2Enumeral_2EiDUB V0n))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0a))) (=> (and ((mono_2Ec_2Edivides_2Edivides V1b) V2c) (_let_1 V1b)) (_let_1 V2c)))) (forall ((A_27a d) (V0t_2E0 u) (V1l2_2E0 u) (V2l1_2E0 u) (V3h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) (_let_1 V0t_2E0))))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (_let_1 V2l1_2E0))) (= (or (exists ((V4lt_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4lt_2E0))) (and (= (_let_1 V2l1_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) _let_2))) (= (_let_1 V0t_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V1l2_2E0)))))))) (and (= _let_3 _let_2) (= _let_4 (_let_1 c_2Elist_2ENIL_2E0)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0p mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Edivides_2Eprime V0p) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0p))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (exists ((V1p mono_2Etyop_2Enum_2Enum)) (and (mono_2Ec_2Edivides_2Eprime V1p) ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1p)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Earithmetic_2EFUNPOW_2E0)) _let_7))) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Edivides_2Edivides (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a)) (and (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1x) V2y))) (= (mono_2Ec_2Epred__set_2Enum__to__pair (mono_2Ec_2Epred__set_2Epair__to__num _let_1)) _let_1))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Epred__set_2Epair__to__num (mono_2Ec_2Epred__set_2Enum__to__pair V0x)) V0x))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Edivides_2EPRIMES V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= (exists ((V2q mono_2Etyop_2Enum_2Enum)) (= V1b ((mono_2Ec_2Earithmetic_2E_2A V2q) V0a))) ((mono_2Ec_2Edivides_2Edivides V0a) V1b))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2s_2E0))) (let ((_let_4 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_5 (c_2Epred__set_2EIMAGE_2E2 _let_4))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_7 ((s A_27a) V1x_2E0))) (= (_let_6 (_let_5 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_7) _let_3)))) (_let_6 ((c_2Epred__set_2EINSERT_2E2 ((s A_27b) ((app_2E2 _let_4) _let_7))) (_let_6 (_let_5 _let_3))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Edivides_2EPRIMES V0n)) (mono_2Ec_2Edivides_2EPRIMES (mono_2Ec_2Enum_2ESUC V0n)))) (forall ((A_27a d)) (and (forall ((V1x_2E0 u) (V2x_27_2E0 u) (V3l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Elist_2ESNOC_2E2 (_let_3 V1x_2E0)))) (let ((_let_5 (c_2Elist_2ECONS_2E2 (_let_3 V2x_27_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2))))))))))) (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_2)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) ((mono_2Ec_2Edivides_2Edivides V0m) (mono_2Ec_2Earithmetic_2EFACT V1n)))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (exists ((V1i mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Edivides_2EPRIMES V1i)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EEMPTY_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Edivides_2Eprime V0p) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0p))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Edivides_2Eprime (mono_2Ec_2Edivides_2EPRIMES V0n))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (=> (V0p V1x) (= ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2EDecode_2Edecode__num V0p)) V1x) (mono_2Ec_2EEncode_2Eencode__num V1x)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) (_let_5 A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDR_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))) (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (((c_2EbasicSize_2Esum__size_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EbasicSize_2Esum__size_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2EbasicSize_2Eoption__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EbasicSize_2Eoption__size_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_3)))) (= (_let_5 (c_2Ellist_2ELTL_2E1 (_let_4 (c_2Ellist_2EfromList_2E1 _let_2)))) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))) (_let_5 c_2Eoption_2ENONE_2E0)) (_let_5 (c_2Eoption_2ESOME_2E1 (_let_4 (c_2Ellist_2EfromList_2E1 (_let_1 (c_2Elist_2ETL_2E1 _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Ebool_2EDATATYPE_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (_let_1 ((c_2Epred__set_2EDELETE_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2))) _let_3)) _let_2))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1g_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((s A_27a) V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 tyop_2Enum_2Enum))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (_let_7 _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_4))) _let_6))) _let_1))) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_9) _let_6)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_4) _let_1))))))))))))))))) (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V1g_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_3 _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Enum_2Enum)))) (= (_let_8 ((c_2EbasicSize_2Epair__size_2E2 _let_5) _let_2)) (_let_8 (c_2Epair_2EUNCURRY_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) F0_2E0)) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (((c_2EbasicSize_2Esum__size_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) V1g_2E0)) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((V3f_2E0 u) (V4g_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) V4g_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (((c_2EbasicSize_2Esum__size_2E3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V3f_2E0)) _let_2) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x mono_2Etyop_2Eone_2Eone)) (= (mono_2Ec_2EbasicSize_2Eone__size V0x) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1v_2E0 u) (V2r_2E0 u) (V3rows_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V3rows_2E0))) (let ((_let_5 ((s _let_2) V2r_2E0))) (let ((_let_6 ((s A_27b) V1v_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH_2E2 _let_6))) (let ((_let_8 (s A_27a))) (let ((_let_9 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_1))) (let ((_let_12 (_let_11 ((app_2E2 _let_5) _let_6)))) (= (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_8 (_let_7 _let_4)))))) (=> (not (= _let_12 (_let_11 c_2Eoption_2ENONE_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_8 (c_2Eoption_2ETHE_2E1 _let_12))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 (_let_8 (_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (= (_let_237 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar)) (_let_237 c_2Elist_2ETL_2E0)) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (c_2Elist_2ETL_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) _let_2)))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1v_27_2E0 u) (V2v_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1v_27_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (_let_1 V2v_2E0))) (let ((_let_5 (s _let_3))) (let ((_let_6 (_let_5 V0x_2E0))) (= (or (and (= _let_4 _let_2) (= _let_6 (_let_5 c_2Elist_2ENIL_2E0))) (exists ((V4a_2E0 u) (V5l_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V5l_2E0))) (let ((_let_5 ((s A_27a) V4a_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) A_27b))) (and (= (_let_3 V0x_2E0) (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))) (= (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) V3f_2E0)) _let_5))) _let_4)) (_let_1 V1v_27_2E0))))))))))) (= (_let_1 (((c_2Elist_2Elist__CASE_2E3 _let_6) _let_4) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_3) A_27b))) V3f_2E0))) _let_2))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d)) (and (forall ((V1xb_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V1xb_2E0))) (let ((_let_4 (s _let_2))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((c_2EEncode_2Eencode__option_2E2 _let_3) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1))))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((V0xb_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s _let_1) ((c_2EEncode_2Eencode__option_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0xb_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)))) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((V0b Bool)) (= (mono_2Ec_2EbasicSize_2Ebool__size V0b) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EbasicSize_2Epair__size_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EbasicSize_2Epair__size_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1p_2E0 u) (V2g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 ((s A_27a) V0i_2E0)) ((s (_let_1 A_27a)) V1p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2g_2E0)))) (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_1 A_27a)) V1p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2g_2E0)) ((s A_27a) V0i_2E0)) ((s A_27b) V3x_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2y_2E0))) (let ((_let_4 (_let_2 V1x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V0P_2E0))) (let ((_let_10 (app_2E2 _let_9))) (let ((_let_11 (_let_6 _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_9))) _let_4))) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_10 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))))))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 (c_2Ewellorder_2Efl_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_5)))))) _let_5)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d)) (and (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V1f_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 ((c_2EbasicSize_2Eoption__size_2E2 _let_2) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1))))) (mono_2Ec_2Enum_2ESUC (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1))))))))) (forall ((V0f_2E0 u)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2EbasicSize_2Eoption__size_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)))) mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2))) _let_2)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_236 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ewhile_2EWHILE_2Emono_2Etyop_2Enum_2Enum)) (_let_236 c_2Ewhile_2EWHILE_2E0)) (forall ((V0Q (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (not (V1P V2n))) (V0Q mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> (and (V1P V3n) (forall ((V4m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4m) V3n) (not (V1P V4m))))) (V0Q (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V3n))))) (V0Q (mono_2Ec_2Ewhile_2EOLEAST V1P)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (=> (V0P V1x) (V0P (mono_2Ec_2Ewhile_2ELEAST V0P)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_8 (_let_2 _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Ewhile_2EOWHILE_2E3 _let_6) _let_4) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Ewhile_2EOWHILE_2E0)) _let_6))) _let_4))) _let_1)))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EpatternMatches_2EPMATCH__ROW__LIFT_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Elist_2ELIST__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2ELIST__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7))) (= (_let_3 (((c_2Elist_2ELUPDATE_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_8)) c_2Elist_2ELUPDATE_2E0)) _let_6))) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ewellorder_2EelsOf_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (= (F3 V4n) mono_2Ec_2Ebool_2ET)) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum)) (= (F2 V3n) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((F1 V0x) V2n) (= V0x V2n))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n V0x) ((F0 V0x) V1n))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0x))) (and (= (mono_2Ec_2Ewhile_2EOLEAST (F1 V0x)) _let_1) (= (mono_2Ec_2Ewhile_2EOLEAST F3) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)) (= (mono_2Ec_2Ewhile_2EOLEAST F2) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum) (= (mono_2Ec_2Ewhile_2EOLEAST (F0 V0x)) _let_1))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1b_2E0 u) (V0g_2E0 u) (V2gv Bool)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 ((s _let_4) V1b_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)))) (let ((_let_7 ((s _let_6) V0g_2E0))) (let ((_let_8 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V2gv)))) (let ((_let_9 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (let ((_let_10 ((tyop_2Emin_2Efun _let_6) _let_9))) (= (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_10)) F0_2E0)) _let_5))) _let_7))) _let_8)) (_let_3 (((c_2Ebool_2ECOND_2E3 _let_8) (_let_3 ((c_2Estate__transformer_2EIGNORE__BIND_2E2 _let_5) (_let_3 ((c_2Estate__transformer_2EMWHILE_2E2 _let_7) _let_5))))) (_let_3 (c_2Estate__transformer_2EUNIT_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))))))))))))))))) (forall ((V0g_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)))) (let ((_let_3 ((s _let_2) V0g_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 ((s _let_4) V1b_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_6))) (= (_let_9 ((c_2Estate__transformer_2EMWHILE_2E2 _let_3) _let_5)) (_let_9 ((c_2Estate__transformer_2EBIND_2E2 _let_3) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_3))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 ((s (tyop_2Elist_2Elist tyop_2Eone_2Eone)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ewhile_2ELEAST V0P))) (=> (V0P V1x) (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V1x) (V0P _let_1))))) (forall ((A_27a d) (V0B_2E0 u) (V1C_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V2R_2E0)))) (forall ((V3s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0B_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V2R_2E0)) (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V1C_2E0)) _let_2))))) _let_2)))))))))))) (forall ((V4P_2E0 u)) (=> (forall ((V5s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (app_2E2 (_let_4 V4P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 V0B_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V1C_2E0)) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))))))))))) (forall ((V6v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V4P_2E0)) ((s A_27a) V6v_2E0)))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 (c_2Elist_2Enub_2E1 (_let_1 V0l_2E0)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0fs_2E0 u) (V1xs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V1xs_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 ((s (tyop_2Elist_2Elist _let_4)) V0fs_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_6) _let_2)) (_let_7 ((c_2Elist_2ELIST__BIND_2E2 _let_6) ((s (_let_5 _let_3)) ((c_2Ecombin_2EC_2E2 ((s (_let_5 ((tyop_2Emin_2Efun _let_1) _let_3))) c_2Elist_2EMAP_2E0)) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))))) (forall ((V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) (mono_2Ec_2Ewhile_2ELEAST V0p)) (not (V0p V2n)))) (V0p (mono_2Ec_2Ewhile_2ELEAST V0p))) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0p V1n)))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0A_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_3))) ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) tyop_2Emin_2Ebool)) ((c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2Ecount (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ewhile_2EWHILE_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ewhile_2EWHILE_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0l_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 A_27b)) V2f_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V1g_2E0))) (let ((_let_5 ((s (tyop_2Elist_2Elist A_27c)) V0l_2E0))) (let ((_let_6 (s _let_3))) (= (_let_6 ((c_2Elist_2ELIST__BIND_2E2 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_2) _let_5))) _let_4)) (_let_6 ((c_2Elist_2ELIST__BIND_2E2 _let_5) ((s (_let_1 _let_3)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V3n))))) _let_2)) (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n))))) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))))))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)) (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s A_27a))) (= (_let_2 ((c_2Erich__list_2EELL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)) (_let_2 (c_2Elist_2ELAST_2E1 _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_4))) (= (_let_1 (((c_2Ewhile_2EWHILE_2E3 _let_8) _let_6) _let_2)) (_let_1 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Ewhile_2EWHILE_2E0)) _let_8))) _let_6))) _let_2))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0B_2E0 u) (V1A_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (s ((tyop_2Emin_2Efun (_let_5 (tyop_2Eoption_2Eoption A_27d))) tyop_2Emin_2Ebool)))) (let ((_let_7 (s (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_7 V0B_2E0))) (and (=> (not (= _let_8 (_let_7 c_2Epred__set_2EEMPTY_2E0))) (= (_let_6 ((c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_8)) (_let_6 c_2Epred__set_2EEMPTY_2E0))) (= (_let_4 ((c_2Ecardinal_2Eset__exp_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1A_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_4 ((c_2Epred__set_2EINSERT_2E2 ((s _let_3) (c_2Ecombin_2EK_2E1 ((s _let_1) c_2Eoption_2ENONE_2E0)))) (_let_4 c_2Epred__set_2EEMPTY_2E0)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Elist_2EEVERY_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EEVERY_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (exists ((V2n mono_2Etyop_2Enum_2Enum)) (V1P V2n)) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> (and (forall ((V4m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4m) V3n) (not (V1P V4m)))) (V1P V3n)) (V0Q V3n)))) (V0Q (mono_2Ec_2Ewhile_2ELEAST V1P)))) (= (_let_235 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum)) (_let_235 c_2Eoption_2ESOME_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1m) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n)))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool))) ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Enum_2Enum V0p) (mono_2Ec_2EDecode_2Edecode__num V0p))) (forall ((A_27a d) (V0s_2E0 u)) (= (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) _let_2)))))))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))) (= (_let_234 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)) (_let_234 c_2Eoption_2ENONE_2E0)) (and (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c))) (= (mono_2Ec_2Estring_2EEXPLODE (_let_1 V1s)) (_let_1 (mono_2Ec_2Estring_2EEXPLODE V1s))))) _let_170) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__tree_2E1 _let_5))) ((s (_let_4 _let_1)) (c_2EEncode_2Eencode__tree_2E1 _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ewhile_2EWHILE_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ewhile_2EWHILE_2E3 ((s (_let_2 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0p V1n)) (and (V0p (mono_2Ec_2Ewhile_2ELEAST V0p)) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) (mono_2Ec_2Ewhile_2ELEAST V0p)) (not (V0p V2n))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0s_27_2E0 u) (V1s_2E0 u) (V2f_2E0 u) (V3G_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0s_27_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27a)) V2f_2E0))) (let ((_let_6 ((s (_let_4 tyop_2Emin_2Ebool)) V3G_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_7 (((c_2Ewhile_2EOWHILE_2E3 _let_6) _let_5) _let_3)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_2))) (= (_let_1 (((c_2Ewhile_2EWHILE_2E3 _let_6) _let_5) _let_3)) _let_2)))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2Ewhile_2ELEAST V0P) (((mono_2Ec_2Ewhile_2EWHILE_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_7E) V0P)) mono_2Ec_2Enum_2ESUC) mono_2Ec_2Enum_2E0))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2EEL_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((A_27a d) (V0b_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)))) (forall ((V1c_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1c_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V0b_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_2) _let_4))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Ewhile_2EHOARE__SPEC_2E3 _let_7) _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) c_2Ewhile_2EHOARE__SPEC_2E0)) _let_7))) _let_6))) _let_4)))))))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_1)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l1_2E0))) (let ((_let_3 (_let_1 V3l2_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (c_2Elist_2EFOLDR_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)))) (let ((_let_6 (_let_5 (_let_4 V1e_2E0)))) (= (_let_4 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3)))) (_let_4 ((_let_5 (_let_4 (_let_6 _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1G_2E0 u) (V2f_2E0 u)) (=> (and (forall ((V3s_2E0 u)) (let ((_let_1 ((s A_27a) V3s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V1G_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V0P_2E0)) _let_1))) _let_1)))))))))) (forall ((V4s1_2E0 u) (V5s2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5s2_2E0))) (let ((_let_3 (_let_1 V4s1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0P_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 V1G_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 (_let_1 ((app_2E2 ((s (_let_4 A_27a)) V2f_2E0)) _let_3))))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))) (forall ((V6s1_2E0 u) (V7s2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7s2_2E0))) (let ((_let_3 (_let_1 V6s1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_7 (((c_2Ewhile_2EOWHILE_2E3 (_let_6 V1G_2E0)) ((s (_let_4 A_27a)) V2f_2E0)) _let_3)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V0P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)) (F0 V0P))) (=> (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2n mono_2Etyop_2Enum_2Enum)) (= ((F1 V0P) V2n) (V0P V2n))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2Ewhile_2EOLEAST V0P) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (F0 V0P)) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Ewhile_2ELEAST (F1 V0P)))) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 _let_8) _let_6) _let_4) _let_1)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_8))) _let_6))) _let_4))) _let_1))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V0a) V1b) V2t0) (exists ((V3delta mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V3delta) V2t0) (V1b V3delta) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V3delta) V4t) ((mono_2Ec_2Earithmetic_2E_3C_3D V4t) V2t0)) (and (not (V1b V4t)) (V0a V4t)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (F0 V0x) mono_2Ec_2Ebool_2ET)) (= (mono_2Ec_2Ewhile_2ELEAST F0) mono_2Ec_2Enum_2E0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Ereflexive_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_2) _let_2))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (= mono_2Ec_2Erich__list_2EAND__EL (mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (= (mono_2Ec_2Ewhile_2EOLEAST V0P) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (not (V0P V1n))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((F1 V0x) V2n) (= V0x V2n))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((F0 V0x) V1n) (= V1n V0x))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (and (= (mono_2Ec_2Ewhile_2ELEAST (F0 V0x)) V0x) (= (mono_2Ec_2Ewhile_2ELEAST (F1 V0x)) V0x)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (= (_let_233 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (_let_233 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d)) (and (forall ((V3x1_2E0 u) (V4l1_2E0 u) (V5x2_2E0 u) (V6l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V5x2_2E0))) (let ((_let_5 (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))) (let ((_let_6 (_let_1 V4l1_2E0))) (let ((_let_7 (_let_3 V3x1_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erich__list_2EIS__SUBLIST_2E2 _let_6) _let_5))) (and (= _let_7 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_6))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erich__list_2EIS__SUBLIST_2E2 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) _let_6))) _let_5))))))))))))) (forall ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUBLIST_2E2 (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1x_2E0)) (_let_1 V2l_2E0)))))) mono_2Ec_2Ebool_2EF))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUBLIST_2E2 (_let_1 V0l_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0a1_2E0 u) (V1a0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1a0_2E0)) (_let_1 V0a1_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 _let_6) _let_3) _let_2)) (_let_1 ((app_2E2 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Earithmetic_2EFUNPOW_2E0)) _let_6))) _let_3))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1g_2E0 u)) (exists ((V2f_2E0 u)) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27a)))) (let ((_let_5 (app_2E2 (_let_4 V2f_2E0)))) (= (_let_1 (_let_5 _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) _let_2) (_let_1 (_let_5 (_let_1 ((app_2E2 (_let_4 V1g_2E0)) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s (_let_1 A_27b)) V2f_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_2) (_let_5 V0t_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (s (_let_3 (_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2ELINV_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2ELINV_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1f_2E0 u) (V2G_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V2G_2E0)) (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 ((s (_let_2 A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_1 V0s_2E0))))))))) (= (_let_1 (((c_2Ewhile_2EOWHILE_2E3 ((s (_let_2 tyop_2Emin_2Ebool)) V2G_2E0)) ((s (_let_2 A_27a)) V1f_2E0)) ((s A_27a) V0s_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1G_2E0 u) (V2f_2E0 u) (V3s_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3s_2E0)))) (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (app_2E2 (_let_4 V0P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 V1G_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2)))))))))))))) (forall ((V5s_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5s_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_5 (((c_2Ewhile_2EOWHILE_2E3 (_let_4 V1G_2E0)) ((s (_let_3 A_27a)) V2f_2E0)) (_let_1 V3s_2E0))) (_let_5 (c_2Eoption_2ESOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_4 V0P_2E0)) _let_2)))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1m) (mono_2Ec_2Ewhile_2ELEAST V0P)) (not (V0P V1m)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (= (_let_3 ((c_2Ebool_2ELET_2E2 _let_7) _let_4)) (_let_3 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) c_2Ebool_2ELET_2E0)) _let_7))) _let_4))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (exists ((V2f_2E0 u)) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))))) (forall ((V4y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V4y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V5x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V2f_2E0)) _let_2)) (_let_1 V4y_2E0))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V2f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5))) (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5)))) (= _let_3 _let_2))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (= (_let_231 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool)) (_let_231 c_2Ecombin_2Eo_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (=> (and (forall ((V7f_2E0 u) (V8a_2E0 u) (V9cs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (_let_3 _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) V0P_2E0)) ((s _let_4) V7f_2E0)))) ((s A_27a) V8a_2E0)))) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) V9cs_2E0)))))))))))) (forall ((V10f_2E0 u) (V11a_2E0 u) (V12v6_2E0 u) (V13v7_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (_let_4 _let_7))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) V0P_2E0)) ((s _let_5) V10f_2E0)))) ((s A_27a) V11a_2E0)))) (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27b) V12v6_2E0)) (_let_3 V13v7_2E0)))))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))))))) (forall ((V1f_2E0 u) (V2a_2E0 u) (V3b_2E0 u) (V4bs_2E0 u) (V5c_2E0 u) (V6cs_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6cs_2E0))) (let ((_let_4 ((s A_27c) V5c_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4bs_2E0))) (let ((_let_8 ((s A_27b) V3b_2E0))) (let ((_let_9 (s A_27a))) (let ((_let_10 (_let_9 V2a_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_12 ((tyop_2Emin_2Efun A_27b) _let_11))) (let ((_let_13 (tyop_2Emin_2Efun A_27a))) (let ((_let_14 (_let_13 _let_12))) (let ((_let_15 ((s _let_14) V1f_2E0))) (let ((_let_16 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_17 ((tyop_2Emin_2Efun _let_5) _let_16))) (let ((_let_18 (_let_13 _let_17))) (let ((_let_19 (app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_14) _let_18)) V0P_2E0)) _let_15))))) (let ((_let_20 (s _let_17))) (let ((_let_21 (s _let_16))) (let ((_let_22 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_22 ((app_2E2 (_let_21 ((app_2E2 (_let_20 (_let_19 (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 _let_15) _let_10))) _let_8))) _let_4))))) _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_22 ((app_2E2 (_let_21 ((app_2E2 (_let_20 (_let_19 _let_10))) (_let_6 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))))))))))))))))))))))))))))) (forall ((V14v_2E0 u) (V15v1_2E0 u) (V16v2_2E0 u) (V17v3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Elist_2Elist A_27b))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (_let_3 _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) V0P_2E0)) ((s _let_4) V14v_2E0)))) ((s A_27a) V15v1_2E0)))) ((s _let_2) V16v2_2E0)))) ((s _let_1) V17v3_2E0)))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (= (_let_230 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2EALL__DISTINCT_2Emono_2Etyop_2Enum_2Enum)) (_let_230 c_2Elist_2EALL__DISTINCT_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Elinear__order_2E2 (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_2))) (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Ewhile_2EHOARE__SPEC_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ewhile_2EHOARE__SPEC_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29) (V1 Bool) (V2 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption _let_1)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool V1))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29 V2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (forall ((V2m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V0n) (not (V1P V2m)))) (V1P V0n)) (= (mono_2Ec_2Ewhile_2EOLEAST V1P) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0n)))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (forall ((V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (=> (and (not (= V1l mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (mono_2Ec_2Elist_2ELAST_2Emono_2Etyop_2Enum_2Enum V1l)) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) V1l)) (= ((mono_2Ec_2Elogroot_2ELOG V0b) ((mono_2Ec_2Enumposrep_2El2n V0b) V1l)) (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V1l))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) (_let_3 (c_2Epair_2EUNCURRY_2E1 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2B_2E0 u) (V6s_2E0 u)) (let ((_let_1 ((s A_27a) V6s_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V2B_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_4))) _let_6))) _let_1))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V0P_2E0 u) (V2B_2E0 u) (V5s_2E0 u)) (let ((_let_1 ((s A_27a) V5s_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V2B_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_4))) _let_6))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0P_2E0 u) (V1R_2E0 u) (V2B_2E0 u) (V3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2B_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s (_let_6 _let_7)))) (let ((_let_9 (s _let_7))) (let ((_let_10 (s (_let_1 A_27a)))) (let ((_let_11 (_let_10 V3C_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V4s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2B_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V3C_2E0)) _let_2))))) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (c_2Erelation_2EWF_2E1 ((s (_let_1 _let_2)) V1R_2E0))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Ewhile_2EHOARE__SPEC_2E3 (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F0_2E0)) _let_5))) _let_4))) _let_11) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Ewhile_2EHOARE__SPEC_2E3 _let_5) (_let_10 ((c_2Ewhile_2EWHILE_2E2 _let_4) _let_11))) (_let_3 ((app_2E2 (_let_9 ((app_2E2 (_let_8 F1_2E0)) _let_5))) _let_4))))))))))))))))))))))) (= (_let_229 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) (_let_229 c_2Elist_2ENIL_2E0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) _let_1))) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b2_2E0))) (let ((_let_4 (_let_2 V1b1_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__EVERY_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27a)) V1g_2E0))) (let ((_let_5 ((s (_let_3 tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_6 ((c_2Ewhile_2EWHILE_2E3 _let_5) _let_4))) (= (_let_1 (_let_6 _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_5) _let_2))) (_let_1 (_let_6 (_let_1 ((app_2E2 _let_4) _let_2))))) _let_2)))))))))) (forall ((A_27a d) (V0h1_2E0 u) (V1h2_2E0 u)) (let ((_let_1 (s A_27a))) (=> (= (_let_1 V0h1_2E0) (_let_1 V1h2_2E0)) (forall ((V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 V2l1_2E0))) (=> (= _let_4 _let_2) (= (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V0h1_2E0)) _let_4)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V1h2_2E0)) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0i_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2Q_2E0)))))))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0k_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0k_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Estate__transformer_2EBIND_2E2 ((s (_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (c_2Estate__transformer_2EUNIT_2E1 _let_1))) _let_4)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0l2_2E0 u) (V1l1_2E0 u) (V2g_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l1_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V3f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_6 (tyop_2Elist_2Elist A_27b))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V0l2_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_10 ((s (tyop_2Elist_2Elist _let_9)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_6)) ((c_2Epair_2E_2C_2E2 _let_3) _let_8)))))) (let ((_let_11 (tyop_2Emin_2Efun _let_9))) (let ((_let_12 ((s (_let_11 A_27a)) c_2Epair_2EFST_2E0))) (let ((_let_13 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V2g_2E0))) (let ((_let_14 (s (tyop_2Elist_2Elist A_27d)))) (let ((_let_15 ((s (_let_11 A_27b)) c_2Epair_2ESND_2E0))) (let ((_let_16 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_16 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_16 (c_2Elist_2ELENGTH_2E1 _let_8)))) (and (= (_let_2 ((c_2Elist_2EMAP_2E2 _let_12) _let_10)) _let_3) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_15) _let_10)) _let_8) (= (_let_14 ((c_2Elist_2EMAP_2E2 ((s (_let_11 A_27d)) ((c_2Ecombin_2Eo_2E2 _let_13) _let_15))) _let_10)) (_let_14 ((c_2Elist_2EMAP_2E2 _let_13) _let_8))) (= (_let_5 ((c_2Elist_2EMAP_2E2 ((s (_let_11 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_12))) _let_10)) (_let_5 ((c_2Elist_2EMAP_2E2 _let_4) _let_3)))))))))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0l1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1l2 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum V0l1) V1l2)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Elist_2ESUM V0l1)) (mono_2Ec_2Elist_2ESUM V1l2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 ((s _let_2) X1_2E0))) (let ((_let_7 (_let_1 _let_2))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Epred__set_2ESURJ_2E3 _let_8) _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Epred__set_2ESURJ_2E0)) _let_8))) _let_6))) _let_5)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_2 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)))) (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_5 (_let_2 (c_2EfixedPoint_2Elfp_2E1 _let_4)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((app_2E2 _let_4) (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_5))))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_3)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Enumeral_2Eonecount V0n) V1a))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_2 V0n) (_let_2 _let_1)) (= V0n ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2D _let_1) V1a))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0n))) (let ((_let_2 (_let_1 V1m))) (let ((_let_3 (mono_2Ec_2Enum_2ESUC _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 _let_3))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT1 V1m))) (let ((_let_6 (mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2EBIT2 V0n)))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (let ((_let_9 (_let_8 _let_5))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 _let_3))) (let ((_let_11 (mono_2Ec_2Enumeral_2EiiSUC _let_2))) (let ((_let_12 (mono_2Ec_2Earithmetic_2EBIT1 _let_11))) (let ((_let_13 (mono_2Ec_2Earithmetic_2EBIT2 V1m))) (let ((_let_14 (_let_6 _let_13))) (let ((_let_15 (mono_2Ec_2Enumeral_2EiiSUC V0n))) (let ((_let_16 (_let_1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_17 (_let_8 _let_13))) (let ((_let_18 ((mono_2Ec_2Earithmetic_2E_2B mono_2Ec_2Earithmetic_2EZERO) V0n))) (let ((_let_19 (mono_2Ec_2Enum_2ESUC V0n))) (and (= (mono_2Ec_2Enumeral_2EiZ _let_18) V0n) (= (mono_2Ec_2Enumeral_2EiZ _let_16) V0n) (= (mono_2Ec_2Enumeral_2EiZ _let_9) (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Enumeral_2EiZ _let_2))) (= (mono_2Ec_2Enumeral_2EiZ _let_17) _let_4) (= (mono_2Ec_2Enumeral_2EiZ _let_14) _let_10) (= (mono_2Ec_2Enum_2ESUC _let_18) _let_19) (= (mono_2Ec_2Enum_2ESUC _let_16) _let_19) (= (mono_2Ec_2Enum_2ESUC _let_17) _let_10) (= (mono_2Ec_2Enumeral_2EiiSUC _let_18) _let_15) (= (mono_2Ec_2Enumeral_2EiiSUC _let_9) _let_10) (= (mono_2Ec_2Enumeral_2EiiSUC _let_17) _let_12) (= (mono_2Ec_2Enumeral_2EiiSUC _let_7) _let_12) (= (mono_2Ec_2Enumeral_2EiiSUC _let_14) (mono_2Ec_2Earithmetic_2EBIT2 _let_11)) (= (mono_2Ec_2Enumeral_2EiiSUC _let_16) _let_15) (= (mono_2Ec_2Enum_2ESUC _let_14) _let_12) (= (mono_2Ec_2Enum_2ESUC _let_7) _let_10) (= (mono_2Ec_2Enum_2ESUC _let_9) _let_4) (= (mono_2Ec_2Enumeral_2EiZ _let_7) _let_4)))))))))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1))))) (= (_let_2 c_2Estate__transformer_2EUNIT_2E0) (_let_2 (c_2Epair_2ECURRY_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ecombin_2EI_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0n))) (let ((_let_2 (_let_1 V1m))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 V1m))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_5 (mono_2Ec_2Eprim__rec_2E_3C _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 V1m))) (let ((_let_7 (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (let ((_let_8 (mono_2Ec_2Eprim__rec_2E_3C _let_7))) (let ((_let_9 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Earithmetic_2EZERO))) (and (= (_let_9 _let_4) mono_2Ec_2Ebool_2ET) (= (_let_9 _let_7) mono_2Ec_2Ebool_2ET) (= (_let_1 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Ebool_2EF) (= (_let_8 _let_3) _let_2) (= (not ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)) (_let_5 _let_6)) (= (_let_8 _let_6) _let_2) (= (_let_5 _let_3) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 (_let_5 (c_2Erelation_2ERC_2E1 (_let_5 (c_2Elist_2ELLEX_2E1 _let_3))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0semi__ring_2E0 u) (V1record_2E0 u) (V2SRP_2E0 u) (V3SRM_2E0 u) (V4SR1_2E0 u) (V5SR0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (s A_27a))) (let ((_let_5 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 (_let_1 _let_9))) (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) V1record_2E0)) ((s _let_5) V0semi__ring_2E0)))) (_let_4 V5SR0_2E0)))) (_let_4 V4SR1_2E0)))) (_let_3 V2SRP_2E0)))) (_let_3 V3SRM_2E0)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 _let_3))) _let_3))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V1a mono_2Etyop_2Enum_2Enum) (V0m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (= ((((F0 V1a) V0m) V2n) V3q) (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Earithmetic_2E_2B V1a) V3q)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V0m) ((mono_2Ec_2Earithmetic_2E_2A V2n) V3q))) V2n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) V2n))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1a) _let_1)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Eprim__rec_2E_3C V0m) V2n)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1a) V0m)) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((F0 V1a) V0m) V2n)) (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) _let_1)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Etexp__help V0n) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Einftree_2Eto__inftree_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Einftree_2Eto__inftree_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epair_2ESND_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epair_2ESND_2E0)) _let_3)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 _let_6) _let_3) _let_2)) (_let_1 ((app_2E2 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Earithmetic_2EFUNPOW_2E0)) _let_6))) _let_3))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V2f_2E0))) (let ((_let_5 (c_2Earithmetic_2EFUNPOW_2E3 _let_4))) (let ((_let_6 (_let_1 ((app_2E2 _let_4) _let_2)))) (let ((_let_7 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (let ((_let_8 (_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum _let_7))))) (and (= (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n))))) _let_2)) (_let_1 (_let_8 _let_6))) (= (_let_1 (_let_8 _let_2)) (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE _let_7)))) _let_6))) (= (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s (_let_1 (_let_1 (_let_2 (_let_2 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F4 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F5 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V10n mono_2Etyop_2Enum_2Enum) (V13m mono_2Etyop_2Enum_2Enum)) (= ((F3 V10n) V13m) (mono_2Ec_2Enumeral_2EiDUB (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2ET) V10n) V13m)))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum) (V5m mono_2Etyop_2Enum_2Enum)) (= ((F0 V3n) V5m) (mono_2Ec_2Enumeral_2EiDUB (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2ET) V3n) V5m)))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum) (V8m mono_2Etyop_2Enum_2Enum)) (= ((F4 V3n) V8m) (mono_2Ec_2Enumeral_2EiDUB (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2EF) V3n) V8m)))) (=> (forall ((V10n mono_2Etyop_2Enum_2Enum) (V12m mono_2Etyop_2Enum_2Enum)) (= ((F1 V10n) V12m) (mono_2Ec_2Earithmetic_2EBIT1 (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2ET) V10n) V12m)))) (=> (forall ((V10n mono_2Etyop_2Enum_2Enum) (V15m mono_2Etyop_2Enum_2Enum)) (= ((F5 V10n) V15m) (mono_2Ec_2Earithmetic_2EBIT1 (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2EF) V10n) V15m)))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum) (V6m mono_2Etyop_2Enum_2Enum)) (= ((F2 V3n) V6m) (mono_2Ec_2Earithmetic_2EBIT1 (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2EF) V3n) V6m)))) (and (forall ((V0b Bool) (V1x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Enumeral_2EiSUB V0b) mono_2Ec_2Earithmetic_2EZERO) V1x) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V9b Bool) (V10n mono_2Etyop_2Enum_2Enum) (V11x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (F3 V10n))) (let ((_let_2 (mono_2Ec_2Enumeral_2EiBIT__cases_2Emono_2Etyop_2Enum_2Enum V11x))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT2 V10n))) (= (((mono_2Ec_2Enumeral_2EiSUB V9b) _let_3) V11x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V9b) (((_let_2 _let_3) (F1 V10n)) _let_1)) (((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 V10n)) _let_1) (F5 V10n)))))))) (forall ((V2b Bool) (V3n mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (F2 V3n))) (let ((_let_2 (mono_2Ec_2Enumeral_2EiBIT__cases_2Emono_2Etyop_2Enum_2Enum V4x))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 V3n))) (= (((mono_2Ec_2Enumeral_2EiSUB V2b) _let_3) V4x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V2b) (((_let_2 _let_3) (F0 V3n)) _let_1)) (((_let_2 (mono_2Ec_2Enumeral_2EiDUB V3n)) _let_1) (F4 V3n)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1b Bool) (V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2ET))) (let ((_let_2 (_let_1 V2n))) (let ((_let_3 (_let_2 V3m))) (let ((_let_4 (mono_2Ec_2Enumeral_2EiDUB _let_3))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT1 V3m))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT1 V2n))) (let ((_let_7 (_let_1 _let_6))) (let ((_let_8 (mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2EF))) (let ((_let_9 ((_let_8 V2n) V3m))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 V3m))) (let ((_let_11 (_let_8 _let_6))) (let ((_let_12 (mono_2Ec_2Earithmetic_2EBIT2 V2n))) (let ((_let_13 (_let_1 _let_12))) (let ((_let_14 (mono_2Ec_2Earithmetic_2EBIT1 _let_9))) (let ((_let_15 (_let_8 _let_12))) (and (= (_let_2 mono_2Ec_2Earithmetic_2EZERO) V2n) (= (_let_11 mono_2Ec_2Earithmetic_2EZERO) (mono_2Ec_2Enumeral_2EiDUB V2n)) (= (_let_11 _let_5) _let_14) (= (_let_7 _let_10) _let_14) (= (_let_15 mono_2Ec_2Earithmetic_2EZERO) _let_6) (= (_let_15 _let_5) _let_4) (= (_let_13 _let_10) _let_4) (= (_let_15 _let_10) _let_14) (= (_let_13 _let_5) (mono_2Ec_2Earithmetic_2EBIT1 _let_3)) (= (_let_11 _let_10) (mono_2Ec_2Enumeral_2EiDUB _let_9)) (= (_let_7 _let_5) _let_4) (= (((mono_2Ec_2Enumeral_2EiSUB V1b) mono_2Ec_2Earithmetic_2EZERO) V0x) mono_2Ec_2Earithmetic_2EZERO)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0c Bool) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0c))))) ((s A_27a) V2x_2E0)))) V0c)))) (forall ((V0c Bool) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (and (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) V0c) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Elist_2EEXISTS_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4)) F0_2E0)) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V0c))))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0v_2E0))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_2 (c_2Efcp_2EV2L_2E1 _let_1)) (_let_2 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) (c_2Efcp_2Efcp__index_2E1 _let_1))) ((s tyop_2Enum_2Enum) (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral_2Einternal__mult V0n))) (let ((_let_2 (_let_1 V1m))) (and (= ((mono_2Ec_2Enumeral_2Einternal__mult (mono_2Ec_2Earithmetic_2EBIT1 V0n)) V1m) (mono_2Ec_2Enumeral_2EiZ ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumeral_2EiDUB _let_2)) V1m))) (= ((mono_2Ec_2Enumeral_2Einternal__mult (mono_2Ec_2Earithmetic_2EBIT2 V0n)) V1m) (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Enumeral_2EiZ ((mono_2Ec_2Earithmetic_2E_2B _let_2) V1m)))) (= (_let_1 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO) (= ((mono_2Ec_2Enumeral_2Einternal__mult mono_2Ec_2Earithmetic_2EZERO) V0n) mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d) (A_27b d) (A_27d d) (A_27e d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27e)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_3 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= _let_3 ((mono_2Ec_2Eprim__rec_2E_3C _let_4) _let_5)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_4) _let_3) (= _let_3 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_4) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_3E _let_5) _let_4) _let_3)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0a mono_2Etyop_2Estring_2Echar)) (exists ((V1r mono_2Etyop_2Enum_2Enum)) (and (= V0a (mono_2Ec_2Estring_2ECHR V1r)) ((mono_2Ec_2Eprim__rec_2E_3C V1r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))) (and (= (mono_2Ec_2Eprim__rec_2EPRE _let_33) mono_2Ec_2Earithmetic_2EZERO) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (= (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Earithmetic_2EBIT1 _let_1)) (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Eprim__rec_2EPRE _let_1))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Earithmetic_2EBIT2 V2n)) (mono_2Ec_2Earithmetic_2EBIT1 V2n))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 V1n))) (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (= (mono_2Ec_2Eprim__rec_2EPRE mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO)) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2Elist_2EEVERY_2E1 _let_4)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))) ((c_2EDecode_2Edecode__list_2E2 _let_6) _let_3)))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum) (V2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V3 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum ((((mono_2Ec_2Enumeral_2EiBIT__cases_2Emono_2Etyop_2Enum_2Enum V0) V1) V2) V3))) (_let_2 ((((c_2Enumeral_2EiBIT__cases_2E4 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_2 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V3)))))))) (= mono_2Ec_2Enumposrep_2Enum__to__dec__list (mono_2Ec_2Enumposrep_2En2l _let_197)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (and (mono_2Ec_2Earithmetic_2EEVEN mono_2Ec_2Earithmetic_2EZERO) (not (mono_2Ec_2Earithmetic_2EEVEN _let_2)) (not (mono_2Ec_2Earithmetic_2EODD _let_1)) (mono_2Ec_2Earithmetic_2EODD _let_2) (not (mono_2Ec_2Earithmetic_2EODD mono_2Ec_2Earithmetic_2EZERO)) (mono_2Ec_2Earithmetic_2EEVEN _let_1))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V0f_2E0)) _let_1))) ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V2Q_2E0)) _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EDFUNSET_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V1P_2E0)) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2Q_2E0)) ((s (_let_1 A_27b)) V0f_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0r mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (exists ((V1a mono_2Etyop_2Estring_2Echar)) (= V0r (mono_2Ec_2Estring_2EORD V1a))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__option_2E1 _let_4)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))) ((c_2EDecode_2Edecode__option_2E2 _let_6) _let_3)))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ewellorder_2Ewellorder__REP_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_1 (_let_2 (_let_2 tyop_2Enum_2Enum))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEXISTS_2E2 (_let_3 (c_2Emin_2E_3D_2E1 _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2EreaderMonad_2EFMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EreaderMonad_2EFMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 (_let_2 tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EDIV2 (mono_2Ec_2Earithmetic_2EBIT1 V0x)) V0x)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (= (_let_2 (c_2Ebag_2ESET__OF__BAG_2E1 ((s (_let_1 tyop_2Enum_2Enum)) (c_2Ebag_2EBAG__OF__SET_2E1 _let_3)))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Elist_2ETL_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Elist_2ETL_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP V0n) mono_2Ec_2Earithmetic_2EZERO) (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V1n))) (= (_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V2m)) ((mono_2Ec_2Earithmetic_2E_2A V1n) (mono_2Ec_2Enumeral_2EiSQR (_let_1 V2m)))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V3n))) (= (_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V4m)) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enumeral_2EiSQR V3n)) (mono_2Ec_2Enumeral_2EiSQR (_let_1 V4m))))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (=> (not (= _let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EPSUB__BAG_2E2 (_let_1 (c_2Ebag_2EBAG__REST_2E1 _let_2))) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_4) _let_4)) _let_4))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))))) (= (_let_228 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Enumeral_2EiBIT__cases_2Emono_2Etyop_2Enum_2Enum)) (_let_228 c_2Enumeral_2EiBIT__cases_2E0)) (and _let_153 (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n)))) (= (mono_2Ec_2Earithmetic_2EFACT _let_1) ((mono_2Ec_2Earithmetic_2E_2A _let_1) (mono_2Ec_2Earithmetic_2EFACT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (= (mono_2Ec_2Earithmetic_2EFACT _let_1) ((mono_2Ec_2Earithmetic_2E_2A _let_1) (mono_2Ec_2Earithmetic_2EFACT (mono_2Ec_2Eprim__rec_2EPRE _let_1))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (and (= (mono_2Ec_2Enumeral_2EiDUB mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO) (= (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Earithmetic_2EBIT2 V0n)) (mono_2Ec_2Earithmetic_2EBIT2 _let_1)) (= (mono_2Ec_2Enumeral_2EiDUB _let_1) (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Enumeral_2EiDUB V0n)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0n))) (and (= (mono_2Ec_2Enumeral_2EiiSUC mono_2Ec_2Earithmetic_2EZERO) (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)) (= (mono_2Ec_2Enumeral_2EiiSUC (mono_2Ec_2Earithmetic_2EBIT1 V0n)) (mono_2Ec_2Earithmetic_2EBIT1 _let_1)) (= (mono_2Ec_2Enumeral_2EiiSUC (mono_2Ec_2Earithmetic_2EBIT2 V0n)) (mono_2Ec_2Earithmetic_2EBIT2 _let_1))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (and (= (mono_2Ec_2Enum_2ESUC mono_2Ec_2Earithmetic_2EZERO) _let_33) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Earithmetic_2EBIT2 V1n)) (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Earithmetic_2EBIT1 V0n)) (mono_2Ec_2Earithmetic_2EBIT2 V0n)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1M_2E0))) (let ((_let_5 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (= (_let_7 ((c_2Epred__set_2EIMAGE_2E2 _let_5) ((s _let_2) (c_2Epred__set_2EBIGUNION_2E1 _let_4)))) (_let_7 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 _let_6)) (c_2Epred__set_2EIMAGE_2E1 _let_5))) _let_4))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a2 d) (A_27b2 d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b2))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a2) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a2))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0b1_2E0 u) (V1b2_2E0 u) (V2e1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 ((s A_27a) V2e1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__IN_2E2 _let_4) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_3) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebag_2EBAG__DISJOINT_2E2 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((V3b1_2E0 u) (V4b2_2E0 u) (V5e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V3b1_2E0))) (let ((_let_3 ((s A_27b) V5e2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V4b2_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__DISJOINT_2E2 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_3) _let_5))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_6 _let_5))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EBAG__IN_2E2 _let_3) _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (_let_1 V0ll_2E0))) (= (_let_1 (c_2Ellist_2ELZIP_2E1 ((s ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) (tyop_2Ellist_2Ellist A_27b))) (c_2Ellist_2ELUNZIP_2E1 _let_2)))) _let_2)))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Eonecount (mono_2Ec_2Earithmetic_2EBIT1 V1n)) V2x) ((mono_2Ec_2Enumeral_2Eonecount V1n) (mono_2Ec_2Enum_2ESUC V2x)))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Eonecount (mono_2Ec_2Earithmetic_2EBIT2 V3n)) V4x) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Eonecount mono_2Ec_2Earithmetic_2EZERO) V0x) V0x))) (forall ((A_27a d) (A_27b d) (V0M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s (_let_1 _let_2)) V0M_2E0))) (let ((_let_4 (s _let_2))) (= (_let_4 (c_2EreaderMonad_2EJOIN_2E1 _let_3)) (_let_4 ((c_2EreaderMonad_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ecombin_2EI_2E0))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1h_2E0 u) (V2v1_2E0 u)) (let ((_let_1 ((s A_27a) V1h_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_1))) ((s _let_4) V2v1_2E0))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_1))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (s _let_1))) (let ((_let_4 ((s _let_2) V0l_2E0))) (= (_let_3 (c_2Elist_2EoHD_2E1 _let_4)) (_let_3 (((c_2Elist_2Elist__CASE_2E3 _let_4) (_let_3 c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_2) _let_1))) F0_2E0))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0a_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) V0a_2E0))) (let ((_let_4 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1R_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_4))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_4))) _let_3) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0h1 mono_2Etyop_2Enum_2Enum) (V1l1 mono_2Etyop_2Enum_2Enum) (V2h2 mono_2Etyop_2Enum_2Enum) (V3l2 mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBITS V2h2) V3l2) (((mono_2Ec_2Ebit_2EBITS V0h1) V1l1) V4n)) (((mono_2Ec_2Ebit_2EBITS ((mono_2Ec_2Earithmetic_2EMIN V0h1) ((mono_2Ec_2Earithmetic_2E_2B V2h2) V1l1))) ((mono_2Ec_2Earithmetic_2E_2B V3l2) V1l1)) V4n))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0tt_2E0 u)) (exists ((V1a_2E0 u) (V2l_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 V0tt_2E0) (_let_2 ((c_2EEncode_2ENode_2E2 ((s A_27a) V1a_2E0)) ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2ESLICE V1h) V2l) V0n) ((mono_2Ec_2Earithmetic_2E_2A (((mono_2Ec_2Ebit_2EBITS V1h) V2l) V0n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2l)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_2 (_let_2 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Enumeral_2EiSUB mono_2Ec_2Ebool_2ET) V0n) V1m))) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 _let_2)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0i mono_2Etyop_2Enum_2Enum) (V1a_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_3 ((s (_let_2 A_27c)) V1a_2E0))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))) (= (_let_4 ((c_2Efcp_2Efcp__index_2E2 ((s (_let_2 A_27b)) (c_2Efcp_2EFCP__TL_2E1 _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0i)))) (_let_4 ((c_2Efcp_2Efcp__index_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0i)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 Bool)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EDIV2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (mono_2Ec_2Earithmetic_2ENUMERAL V0n))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EDIV2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1n))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enum_2ESUC V1n)))) (= (mono_2Ec_2Earithmetic_2EDIV2 mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2EiDUB V0x) ((mono_2Ec_2Earithmetic_2E_2B V0x) V0x))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ecardinal_2Ebijns_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ecardinal_2Ebijns_2E0)) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOG2 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n)) V0n)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (= V2x mono_2Ec_2Earithmetic_2EZERO) (F1 V2x))) (=> (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (F0 V2x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F1 V2x)) mono_2Ec_2Earithmetic_2EZERO) (mono_2Ec_2Earithmetic_2EBIT1 V2x)))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2Eexactlog (mono_2Ec_2Earithmetic_2EBIT1 V0n)) mono_2Ec_2Earithmetic_2EZERO)) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2Eexactlog (mono_2Ec_2Earithmetic_2EBIT2 V1n)) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum F0) ((mono_2Ec_2Enumeral_2Eonecount V1n) mono_2Ec_2Earithmetic_2EZERO)))) (= (mono_2Ec_2Enumeral_2Eexactlog mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 Bool)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0zf_2E0 u) (V1b1f_2E0 u) (V2b2f_2E0 u)) (exists ((V3f_2E0 u)) (let ((_let_1 (s A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V3f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2EZERO)))) (_let_1 V0zf_2E0)) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V3f_2E0)))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27a))) (= (_let_5 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EBIT1 V4n))))) (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V1b1f_2E0)) _let_2))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V3f_2E0)))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27a))) (= (_let_5 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EBIT2 V5n))))) (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V2b2f_2E0)) _let_2))) (_let_5 (_let_4 _let_2)))))))))))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F3 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V4m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0y))) (= (((F1 V0y) V1x) V4m) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V4m)) ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Earithmetic_2EDIV2 V4m)) (mono_2Ec_2Eprim__rec_2EPRE _let_1))) ((mono_2Ec_2Enumeral_2Einternal__mult (mono_2Ec_2Earithmetic_2EBIT2 V1x)) _let_1))))) (=> (forall ((V1x mono_2Etyop_2Enum_2Enum) (V0y mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V1x))) (= (((F0 V1x) V0y) V3n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V3n)) ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Earithmetic_2EDIV2 V3n)) (mono_2Ec_2Eprim__rec_2EPRE _let_1))) ((mono_2Ec_2Enumeral_2Einternal__mult _let_1) (mono_2Ec_2Earithmetic_2EBIT2 V0y)))))) (=> (forall ((V5m mono_2Etyop_2Enum_2Enum) (V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V0y))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 V1x))) (= ((((F3 V5m) V0y) V1x) V6n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V5m)) ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Earithmetic_2EDIV2 V5m)) (mono_2Ec_2Eprim__rec_2EPRE _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EODD V6n)) ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Earithmetic_2EDIV2 V6n)) (mono_2Ec_2Eprim__rec_2EPRE _let_2))) ((mono_2Ec_2Enumeral_2Einternal__mult _let_2) _let_1))))))) (=> (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V5m mono_2Etyop_2Enum_2Enum)) (= (((F2 V0y) V1x) V5m) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (((F3 V5m) V0y) V1x)) (mono_2Ec_2Enumeral_2Eexactlog (mono_2Ec_2Earithmetic_2EBIT2 V0y))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0y))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 V1x))) (let ((_let_3 (mono_2Ec_2Earithmetic_2E_2A _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT2 V1x))) (let ((_let_5 (mono_2Ec_2Enumeral_2Eexactlog _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 V0y))) (let ((_let_7 (mono_2Ec_2Earithmetic_2E_2A _let_4))) (and (= ((mono_2Ec_2Earithmetic_2E_2A V2n) mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO) (= (_let_3 _let_6) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F0 V1x) V0y)) (mono_2Ec_2Enumeral_2Eexactlog _let_6))) (= (_let_7 _let_1) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F1 V0y) V1x)) _let_5)) (= (_let_7 _let_6) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F2 V0y) V1x)) _let_5)) (= (_let_3 _let_1) ((mono_2Ec_2Enumeral_2Einternal__mult _let_2) _let_1)) (= ((mono_2Ec_2Earithmetic_2E_2A mono_2Ec_2Earithmetic_2EZERO) V2n) mono_2Ec_2Earithmetic_2EZERO))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (and (= (_let_2 mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Enumeral_2Etexp__help _let_1) mono_2Ec_2Earithmetic_2EZERO))) (= (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1)) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Eprim__rec_2EPRE _let_1)) mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0h)) V1l)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 A_27a))) (let ((_let_11 (_let_9 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun A_27a) _let_11))) (= (_let_6 ((((c_2Enumeral_2EiBIT__cases_2E4 _let_8) _let_7) _let_5) _let_4)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_1 _let_12)) c_2Enumeral_2EiBIT__cases_2E0)) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 (_let_4 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 V2l2_2E0))))) (_let_5 (_let_4 _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0p (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2EDecode_2Edecode__num V0p) ((mono_2Ec_2EDecode_2Eenc2dec_2Emono_2Etyop_2Enum_2Enum V0p) mono_2Ec_2EEncode_2Eencode__num))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1p_2E0 u) (V2g_2E0 u) (V3p_27_2E0 u) (V4g_27_2E0 u) (V5RES Bool)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 ((s A_27a) V0v_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((_let_2 ((s (_let_4 A_27a)) V1p_2E0)) ((s (_let_4 tyop_2Emin_2Ebool)) V2g_2E0)))) (=> (forall ((V6x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2g_2E0)) ((s A_27b) V6x_2E0)))) (= (exists ((V7x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((s A_27c) V7x_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V4g_27_2E0)) _let_2))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V3p_27_2E0)) _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1p_2E0)) ((s A_27b) V6x_2E0))))))))) V5RES))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((_let_2 ((s (_let_1 A_27a)) V3p_27_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V4g_27_2E0)))) V5RES)))))))) (and (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2acc mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Enum_2ESUC V1n)) V2acc) ((mono_2Ec_2Enumeral_2Etexp__help V1n) (mono_2Ec_2Earithmetic_2EBIT1 V2acc)))) (forall ((V0acc mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumeral_2Etexp__help mono_2Ec_2Enum_2E0) V0acc) (mono_2Ec_2Earithmetic_2EBIT2 V0acc)))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (V0P mono_2Ec_2Earithmetic_2EZERO) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (=> (V0P V1n) (V0P (mono_2Ec_2Earithmetic_2EBIT1 V1n)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> (V0P V2n) (V0P (mono_2Ec_2Earithmetic_2EBIT2 V2n))))) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (V0P V3n)))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0v_2E0)))))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (= mono_2Ec_2Enumeral_2Einternal__mult mono_2Ec_2Earithmetic_2E_2A) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (and (forall ((V6m mono_2Etyop_2Enum_2Enum) (V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V7n))) (= ((mono_2Ec_2Earithmetic_2EMOD V6m) _let_1) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Earithmetic_2EZERO) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V6m) _let_1))))))) (forall ((V4m mono_2Etyop_2Enum_2Enum) (V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V5n))) (= ((mono_2Ec_2Earithmetic_2EMOD V4m) _let_1) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Earithmetic_2EZERO) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V4m) _let_1))))))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V3n))) (= ((mono_2Ec_2Earithmetic_2EDIV V2m) _let_1) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Earithmetic_2EZERO) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2m) _let_1))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V1n))) (= ((mono_2Ec_2Earithmetic_2EDIV V0m) _let_1) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Earithmetic_2EZERO) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Efcp_2Ecart A_27a) ((tyop_2Esum_2Esum A_27b) A_27c)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2EFCP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2EFCP_2E0)) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0n))) (let ((_let_2 (_let_1 V1m))) (and (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2EBIT1 V0n)) V1m) (mono_2Ec_2Enumeral_2EiZ ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumeral_2EiDUB _let_2)) V1m))) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2EBIT2 V0n)) V1m) (mono_2Ec_2Enumeral_2EiDUB (mono_2Ec_2Enumeral_2EiZ ((mono_2Ec_2Earithmetic_2E_2B _let_2) V1m)))) (= (_let_1 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO) (= ((mono_2Ec_2Earithmetic_2E_2A mono_2Ec_2Earithmetic_2EZERO) V0n) mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27c d) (A_27d d) (A_27e d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27d) ((tyop_2Emin_2Efun A_27e) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27d) A_27e)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 ((s (_let_1 A_27a)) V1g_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (_let_6 ((c_2Epred__set_2EIMAGE_2E2 _let_5) ((s (_let_4 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2)))) (_let_6 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1acc mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V1acc))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_3 (mono_2Ec_2Enumeral_2Etexp__help _let_2))) (and (= ((mono_2Ec_2Enumeral_2Etexp__help mono_2Ec_2Earithmetic_2EZERO) V1acc) (mono_2Ec_2Earithmetic_2EBIT2 V1acc)) (= ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Earithmetic_2EBIT2 V0n)) V1acc) (_let_3 _let_1)) (= (_let_3 V1acc) ((mono_2Ec_2Enumeral_2Etexp__help (mono_2Ec_2Eprim__rec_2EPRE _let_2)) _let_1))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n2 mono_2Etyop_2Enum_2Enum) (V1n1 mono_2Etyop_2Enum_2Enum)) (= (= V1n1 V0n2) (= (mono_2Ec_2Epred__set_2Ecount V1n1) (mono_2Ec_2Epred__set_2Ecount V0n2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> (= (mono_2Ec_2Enumeral_2Eexactlog V0n) (mono_2Ec_2Earithmetic_2EBIT1 V1m)) (= V0n ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B V1m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1i_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (not (= _let_3 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2EquantHeuristics_2EGUESS__EXISTS__GAP_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2t mono_2Etyop_2Enum_2Enum) (V3h mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Enumpair_2Encons V1x) V0y) ((mono_2Ec_2Enumpair_2Encons V3h) V2t)) (and (= V1x V3h) (= V0y V2t)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2EiiSUC V0n) (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC V0n)))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (exists ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1x_2E0)))))) (forall ((V2c_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (=> (and (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5x_2E0))) (let ((_let_4 (_let_2 V6y_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2c_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V4x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 V2c_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_2))))))))) (exists ((V3x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) V3x_2E0)) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2c_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_2 V0P_2E0)) ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 (_let_2 V2c_2E0))))))))))) (exists ((V7a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (and (forall ((V8x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V8x_2E0))) (let ((_let_4 (_let_2 V7a_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3)))) (= _let_4 _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V7a_2E0))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V0l_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Elist_2EREVERSE_2E1 (_let_4 (c_2Elist_2EFLAT_2E1 _let_3)))) (_let_4 (c_2Elist_2EFLAT_2E1 (_let_2 (c_2Elist_2EREVERSE_2E1 (_let_2 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3)))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2EMIN (mono_2Ec_2Earithmetic_2ENUMERAL V1x)) (mono_2Ec_2Earithmetic_2ENUMERAL V0y)) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1x) V0y)) V1x) V0y))) (= ((mono_2Ec_2Earithmetic_2EMIN V1x) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Earithmetic_2EMIN mono_2Ec_2Enum_2E0) V1x) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecombin_2EK_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecombin_2EK_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2EMAX V1x) mono_2Ec_2Enum_2E0) V1x) (= ((mono_2Ec_2Earithmetic_2EMAX (mono_2Ec_2Earithmetic_2ENUMERAL V1x)) (mono_2Ec_2Earithmetic_2ENUMERAL V0y)) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1x) V0y)) V0y) V1x))) (= ((mono_2Ec_2Earithmetic_2EMAX mono_2Ec_2Enum_2E0) V1x) V1x))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eset__relation_2Ereln__to__rel_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Eset__relation_2Ereln__to__rel_2E0)) _let_2))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V0n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT2 V1m))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 V1m))) (let ((_let_5 (= V0n V1m))) (and (= mono_2Ec_2Ebool_2EF (= _let_1 mono_2Ec_2Earithmetic_2EZERO)) (= mono_2Ec_2Ebool_2EF (= mono_2Ec_2Earithmetic_2EZERO _let_2)) (= (= _let_1 _let_4) _let_5) (= (= _let_2 _let_3) _let_5) (= (= _let_2 _let_4) mono_2Ec_2Ebool_2EF) (= mono_2Ec_2Ebool_2EF (= _let_1 _let_3)) (= (= _let_2 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Ebool_2EF) (= mono_2Ec_2Ebool_2EF (= mono_2Ec_2Earithmetic_2EZERO _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27c) X3_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 (_let_6 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_6 A_27d))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (s A_27d))) (= (_let_12 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_8) _let_5) _let_3) _let_1)) (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_8))) _let_5))) _let_3))) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_2 (_let_2 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2EiSQR V0x) ((mono_2Ec_2Earithmetic_2E_2A V0x) V0x))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL V2n)) (mono_2Ec_2Earithmetic_2ENUMERAL V3m)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enumeral_2EiZ ((mono_2Ec_2Earithmetic_2E_2B V2n) V3m))))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A mono_2Ec_2Enum_2E0) V4n) mono_2Ec_2Enum_2E0)) (forall ((V10n mono_2Etyop_2Enum_2Enum) (V11m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Earithmetic_2ENUMERAL V10n)) (mono_2Ec_2Earithmetic_2ENUMERAL V11m)) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Earithmetic_2E_2D V10n) V11m)))) (forall ((V12n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V12n))) mono_2Ec_2Enum_2E0)) (forall ((V13n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V13n))) mono_2Ec_2Enum_2E0)) (forall ((V14n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP V14n) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_133 (forall ((V18n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Earithmetic_2ENUMERAL V18n)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Eprim__rec_2EPRE V18n)))) (forall ((V24n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL V24n)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Earithmetic_2EZERO) V24n))) (forall ((V25n mono_2Etyop_2Enum_2Enum) (V26m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL V25n)) (mono_2Ec_2Earithmetic_2ENUMERAL V26m)) ((mono_2Ec_2Eprim__rec_2E_3C V25n) V26m))) (forall ((V28n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E (mono_2Ec_2Earithmetic_2ENUMERAL V28n)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Earithmetic_2EZERO) V28n))) (forall ((V29n mono_2Etyop_2Enum_2Enum) (V30m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E (mono_2Ec_2Earithmetic_2ENUMERAL V29n)) (mono_2Ec_2Earithmetic_2ENUMERAL V30m)) ((mono_2Ec_2Eprim__rec_2E_3C V30m) V29n))) (forall ((V31n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D mono_2Ec_2Enum_2E0) V31n) mono_2Ec_2Ebool_2ET)) (forall ((V33n mono_2Etyop_2Enum_2Enum) (V34m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL V33n)) (mono_2Ec_2Earithmetic_2ENUMERAL V34m)) ((mono_2Ec_2Earithmetic_2E_3C_3D V33n) V34m))) (forall ((V36n mono_2Etyop_2Enum_2Enum)) (= (= V36n mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) V36n))) (forall ((V39n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EODD (mono_2Ec_2Earithmetic_2ENUMERAL V39n)) (mono_2Ec_2Earithmetic_2EODD V39n))) _let_167 (not _let_224) (forall ((V40n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EEVEN (mono_2Ec_2Earithmetic_2ENUMERAL V40n)) (mono_2Ec_2Earithmetic_2EEVEN V40n))) (forall ((V37n mono_2Etyop_2Enum_2Enum) (V38m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D (mono_2Ec_2Earithmetic_2ENUMERAL V37n)) (mono_2Ec_2Earithmetic_2ENUMERAL V38m)) ((mono_2Ec_2Earithmetic_2E_3C_3D V38m) V37n))) (forall ((V35n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V35n) mono_2Ec_2Enum_2E0) mono_2Ec_2Ebool_2ET)) (forall ((V32n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL V32n)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D V32n) mono_2Ec_2Earithmetic_2EZERO))) (forall ((V27n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E mono_2Ec_2Enum_2E0) V27n) mono_2Ec_2Ebool_2EF)) (forall ((V23n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V23n) mono_2Ec_2Enum_2E0) mono_2Ec_2Ebool_2EF)) (forall ((V21n mono_2Etyop_2Enum_2Enum) (V22m mono_2Etyop_2Enum_2Enum)) (= (= V21n V22m) (= (mono_2Ec_2Earithmetic_2ENUMERAL V21n) (mono_2Ec_2Earithmetic_2ENUMERAL V22m)))) (forall ((V20n mono_2Etyop_2Enum_2Enum)) (= (= mono_2Ec_2Enum_2E0 (mono_2Ec_2Earithmetic_2ENUMERAL V20n)) (= V20n mono_2Ec_2Earithmetic_2EZERO))) (forall ((V19n mono_2Etyop_2Enum_2Enum)) (= (= V19n mono_2Ec_2Earithmetic_2EZERO) (= (mono_2Ec_2Earithmetic_2ENUMERAL V19n) mono_2Ec_2Enum_2E0))) (forall ((V17n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Earithmetic_2ENUMERAL V17n)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enum_2ESUC V17n)))) (= _let_140 _let_152) (forall ((V15n mono_2Etyop_2Enum_2Enum) (V16m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL V15n)) (mono_2Ec_2Earithmetic_2ENUMERAL V16m)) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Earithmetic_2EEXP V15n) V16m)))) (forall ((V9n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D V9n) mono_2Ec_2Enum_2E0) V9n)) (forall ((V8n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D mono_2Ec_2Enum_2E0) V8n) mono_2Ec_2Enum_2E0)) (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL V6n)) (mono_2Ec_2Earithmetic_2ENUMERAL V7m)) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Earithmetic_2E_2A V6n) V7m)))) (forall ((V5n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V5n) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V1n) mono_2Ec_2Enum_2E0) V1n)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B mono_2Ec_2Enum_2E0) V0n) V0n))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d)) (and (forall ((V0zf_2E0 u) (V1bf1_2E0 u) (V2bf2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0zf_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (= (_let_1 ((((c_2Enumeral_2EiBIT__cases_2E4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2EZERO))) _let_2) (_let_3 V1bf1_2E0)) (_let_3 V2bf2_2E0))) _let_2))))) (forall ((V7n mono_2Etyop_2Enum_2Enum) (V8zf_2E0 u) (V9bf1_2E0 u) (V10bf2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (_let_2 V10bf2_2E0))) (let ((_let_4 (s A_27a))) (= (_let_4 ((((c_2Enumeral_2EiBIT__cases_2E4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EBIT2 V7n)))) (_let_4 V8zf_2E0)) (_let_2 V9bf1_2E0)) _let_3)) (_let_4 ((app_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum V7n)))))))))) (forall ((V3n mono_2Etyop_2Enum_2Enum) (V4zf_2E0 u) (V5bf1_2E0 u) (V6bf2_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (_let_2 V5bf1_2E0))) (let ((_let_4 (s A_27a))) (= (_let_4 ((((c_2Enumeral_2EiBIT__cases_2E4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (_let_4 V4zf_2E0)) _let_3) (_let_2 V6bf2_2E0))) (_let_4 ((app_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) (_let_1 _let_4)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eposet_2Econtinuous_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eposet_2Econtinuous_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_2) X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_2) _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Epair_2Eprod _let_3) (_let_1 _let_3))) V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_3) (c_2Eposet_2Ecarrier_2E1 _let_4)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Eposet_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Ecomplete_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Eposet_2Efunction_2E3 _let_6) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Emonotonic_2E2 _let_4) _let_2)))) (and (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Elfp_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s (_let_1 A_27a)) V1f_2E0)) ((s A_27a) V2x_2E0))))))) (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Egfp_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s (_let_1 A_27a)) V1f_2E0)) ((s A_27a) V3x_2E0)))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (c_2Esorting_2EPERM_2E2 (_let_1 V0x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V1r_2E0))) (let ((_let_8 (s _let_5))) (let ((_let_9 (_let_8 V0s_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (app_2E2 _let_9))) (let ((_let_12 (app_2E2 _let_7))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 (_let_12 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 (_let_12 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Eposet_2Eposet_2E1 ((s ((tyop_2Epair_2Eprod _let_5) _let_6)) ((c_2Epair_2E_2C_2E2 _let_9) _let_7)))))) (= _let_3 _let_2))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (= (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_1 V0P_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))))))))) (not (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2)) _let_2)))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Ecomplete_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Eposet_2E1 _let_3)))) (exists ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Ebottom_2E2 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s A_27a) V1x_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) (_let_2 _let_3)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eposet_2Etop_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Eposet_2Etop_2E0)) _let_5))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_2) X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_2) _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun (_let_5 A_27a)))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Epair_2Eprod _let_9) (_let_8 _let_9)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (s _let_10))) (= (_let_12 ((c_2Eposet_2Epointwise__lift_2E2 _let_7) _let_4)) (_let_12 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) c_2Eposet_2Epointwise__lift_2E0)) _let_7))) _let_4)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V1)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (= (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V0s_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 ((app_2E2 ((s (_let_2 _let_3)) V1r_2E0)) _let_1))) _let_1)))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u) (V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V1r_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 (_let_7 V0s_2E0)))) (let ((_let_11 (_let_1 V7y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 (_let_6 _let_11))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (app_2E2 (_let_6 V0s_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s (_let_4 _let_5)) V1r_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_9 _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_9 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3)))) (= _let_3 _let_2)))))))))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s A_27a) V2x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eposet_2Eposet_2E1 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) ((s _let_3) V1r_2E0))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V3c_2E0 u) (V2f_2E0 u) (V5y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 _let_5))) (= (exists ((V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V3c_2E0)) _let_2))) (= (_let_1 V5y_2E0) (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V0s_2E0)) _let_2)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) (_let_4 V0s_2E0)))) (_let_4 V3c_2E0)))) ((s _let_2) V2f_2E0)))) ((s A_27a) V5y_2E0))))))))))))) (forall ((V0s_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Edown__continuous_2E2 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) ((s _let_3) V1r_2E0)))) ((s (_let_1 A_27a)) V2f_2E0)))) (forall ((V3c_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V3c_2E0))) (let ((_let_9 (_let_7 V0s_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_6))) (let ((_let_11 (tyop_2Emin_2Efun _let_6))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (_let_3 _let_6))) (let ((_let_14 ((s ((tyop_2Epair_2Eprod _let_6) _let_13)) ((c_2Epair_2E_2C_2E2 _let_9) ((s _let_13) V1r_2E0))))) (let ((_let_15 (c_2Eposet_2Eglb_2E3 _let_14))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((c_2Eposet_2Echain_2E2 _let_14) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((_let_15 _let_8) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((_let_15 (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_11 _let_12)) F0_2E0)) _let_9))) _let_8))) _let_5))) (_let_1 ((app_2E2 _let_5) _let_2)))))))))))))))))))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun (_let_4 A_27c)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_6))) _let_3)))))))))))))) (and (forall ((V0acc mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Elist_2ESUM__ACC mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum) V0acc) V0acc)) (forall ((V1h mono_2Etyop_2Enum_2Enum) (V2t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V3acc mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Elist_2ESUM__ACC ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V1h) V2t)) V3acc) ((mono_2Ec_2Elist_2ESUM__ACC V2t) ((mono_2Ec_2Earithmetic_2E_2B V1h) V3acc))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Eposet_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Ecomplete_2E1 _let_3)))) (exists ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Etop_2E2 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s A_27a) V1x_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Ecomplete_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Eposet_2Ecomplete_2E0)) _let_4)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V2p_2E0 u) (V4j_2E0 u)) (let ((_let_1 ((s A_27a) V4j_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2p_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0s_2E0 u) (V1r_2E0 u) (V2p_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2p_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (_let_4 V0s_2E0))) (let ((_let_8 (c_2Eposet_2Eglb_2E3 ((s ((tyop_2Epair_2Eprod _let_3) _let_6)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_6) V1r_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_4 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) F0_2E0)) _let_7))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_5) _let_1)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebag_2EBAG__IMAGE_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebag_2EBAG__IMAGE_2E0)) _let_6))) _let_4))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a))))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EerrorStateMonad_2EUNIT_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2p_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Eposet_2Elub_2E3 ((s ((tyop_2Epair_2Eprod _let_3) _let_7)) ((c_2Epair_2E_2C_2E2 _let_5) ((s _let_7) V1r_2E0)))) (_let_4 V2p_2E0)) _let_1))) (and (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2p_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) _let_2))) (_let_1 V5z_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) (_let_1 V3x_2E0)))) _let_2))))))))))) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2p_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) _let_2))) (_let_1 V3x_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_1))))))))))))) (forall ((V0 (-> (-> Bool Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_2))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_6 ((s _let_2) (c_2Eposet_2Ecarrier_2E1 _let_3)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Ecomplete_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eposet_2Efunction_2E3 _let_6) _let_6) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eposet_2Emonotonic_2E2 _let_3) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eposet_2Eposet_2E1 _let_3)))) (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Elfp_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s (_let_1 A_27a)) V1f_2E0)) ((s A_27a) V2x_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_27_2E0 u) (V1f_27_2E0 u) (V2M_2E0 u) (V3M_27_2E0 u) (V4v_2E0 u) (V5f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) A_27b))))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V0v_27_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_5 V3M_27_2E0))) (let ((_let_7 (_let_3 V4v_2E0))) (let ((_let_8 (_let_5 V2M_2E0))) (=> (and (forall ((V6a0_2E0 u) (V7a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V7a1_2E0))) (let ((_let_4 ((s A_27a) V6a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27a) _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s A_27b))) (=> (= (_let_2 V3M_27_2E0) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5f_2E0)) _let_4))) _let_3)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1f_27_2E0)) _let_4))) _let_3))))))))))))) (=> (= _let_6 (_let_5 c_2Elist_2ENIL_2E0)) (= _let_7 _let_4)) (= _let_8 _let_6)) (= (_let_3 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) (_let_2 V5f_2E0))) (_let_3 (((c_2Elist_2Elist__CASE_2E3 _let_6) _let_4) (_let_2 V1f_27_2E0)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V2p_2E0 u) (V4j_2E0 u)) (let ((_let_1 ((s A_27a) V4j_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2p_2E0))) (let ((_let_5 (_let_3 V0s_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0s_2E0 u) (V1r_2E0 u) (V2p_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2p_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (_let_4 V0s_2E0))) (let ((_let_8 (c_2Eposet_2Elub_2E3 ((s ((tyop_2Epair_2Eprod _let_3) _let_6)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_6) V1r_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_4 ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_10 _let_11)) F0_2E0)) _let_7))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_5) _let_1)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_5) (_let_4 _let_5))) V0p_2E0))) (let ((_let_7 ((c_2Eposet_2Elfp_2E3 _let_6) ((s (_let_4 A_27a)) V1f_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Eposet_2Eposet_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2f_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27a)) V2f_2E0))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 _let_5))) (let ((_let_7 ((s _let_5) V0s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) _let_2))))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 V0s_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_1 V3x_2E0))))))))))))) (= (_let_1 ((app_2E2 _let_4) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Eposet_2Egfp_2E3 ((s ((tyop_2Epair_2Eprod _let_5) _let_6)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_6) V1r_2E0)))) _let_4) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Eposet_2Ecarrier_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Eposet_2Ecarrier_2E0)) _let_4))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Epair_2Eprod _let_3) (_let_1 _let_3))) V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Econtinuous_2E2 _let_4) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Eup__continuous_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Edown__continuous_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u) (V2l_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2EindexedLists_2EMAPi_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27b) A_27a))) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0)))))))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 (s A_27a))) (and (= (_let_5 V0x_2E0) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) V1f_2E0)) _let_3))) ((s A_27b) ((c_2Elist_2EEL_2E2 _let_3) _let_1))))) ((mono_2Ec_2Eprim__rec_2E_3C V3n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (= (exists ((V2n mono_2Etyop_2Enum_2Enum) (V3f_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V3f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))))))) (exists ((V1ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1ls_2E0)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 (_let_1 _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0t_2E0 u) (V2r_2E0 u) (V3f_2E0 u) (V4g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (= (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0t_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V2r_2E0)) (_let_4 ((app_2E2 (_let_3 V3f_2E0)) _let_1))))) (_let_4 ((app_2E2 (_let_3 V4g_2E0)) _let_1)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) ((s _let_6) V0t_2E0)))) ((s _let_5) V2r_2E0)))) (_let_3 V3f_2E0)))) (_let_3 V4g_2E0)))))))))))))))) (forall ((V0t_2E0 u) (V1s_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) V2r_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0t_2E0))) (let ((_let_8 (tyop_2Emin_2Efun (_let_5 A_27b)))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((s _let_2) V1s_2E0))) (let ((_let_13 (s ((tyop_2Epair_2Eprod _let_9) _let_10)))) (= (_let_13 ((c_2Eposet_2Epointwise__lift_2E2 _let_7) ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 _let_12) _let_4)))) (_let_13 ((c_2Epair_2E_2C_2E2 ((s _let_9) ((c_2Eposet_2Efunction_2E2 _let_7) _let_12))) ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) F0_2E0)) _let_7))) _let_4))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1i_2E0 u) (V2v_2E0 u)) (let ((_let_1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27c)) V2v_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V1i_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27b))) V0f_2E0))) (= (_let_2 (((c_2Efcp_2EFCP__FOLD_2E3 _let_4) _let_3) _let_1)) (_let_2 (((c_2Elist_2EFOLDL_2E3 _let_4) _let_3) ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 _let_1)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eposet_2Eposet_2E1 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) ((s _let_3) V1r_2E0)))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)) ((s A_27a) V2x_2E0)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Eposet_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Eposet_2Eposet_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0b_2E0 u) (V1e_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (exists ((V3b0_2E0 u) (V4eb_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V3b0_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V2s_2E0))) (let ((_let_6 (_let_2 V4eb_2E0))) (let ((_let_7 ((s A_27a) V1e_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (and (= (_let_2 V0b_2E0) (_let_2 ((c_2Ebag_2EBAG__UNION_2E2 _let_6) _let_3))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_7) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebag_2EBAG__IN_2E2 _let_7) _let_6)))) (forall ((V5e_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5e_27_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V4eb_2E0)))) (= _let_2 (_let_1 V1e_2E0)))))) (= _let_5 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))))) (= (_let_2 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V1e_2E0)) (_let_2 V2s_2E0))) (_let_2 (c_2Ebag_2ESET__OF__BAG_2E1 ((s (_let_1 tyop_2Enum_2Enum)) V0b_2E0)))))))) (forall ((A_27a d) (V0p_2E0 u) (V1c_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eposet_2Ecomplete_2E1 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Elub_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s _let_2) V1c_2E0)) ((s A_27a) V2x_2E0))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V1r_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eposet_2Eposet_2E1 ((s ((tyop_2Epair_2Eprod _let_3) _let_4)) ((c_2Epair_2E_2C_2E2 _let_8) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_8) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 _let_5) _let_1))) _let_1))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (forall ((V3e_2E0 u)) (let ((_let_1 ((s A_27a) V3e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V2f_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_5 V0s_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Epred__set_2EBIJ_2E3 _let_3) (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_1))) (_let_4 ((c_2Epred__set_2EDELETE_2E2 (_let_4 V1t_2E0)) ((s A_27b) ((app_2E2 _let_3) _let_1))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Ecomplete_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Eposet_2Ecomplete_2E0)) _let_4)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eposet_2Echain_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eposet_2Echain_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) (_let_2 _let_3)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eposet_2Ebottom_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Eposet_2Ebottom_2E0)) _let_5))) _let_1))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (s A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_5 _let_7)) F0_2E0)) _let_3))) _let_4)) (_let_6 (c_2Epred__set_2ECHOICE_2E1 (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 ((s (_let_5 _let_1)) c_2Epred__set_2EREST_2E0)) _let_4) _let_3))))))))))))) (forall ((V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EINJ_2E3 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) F0_2E0)) _let_2))) ((s (_let_3 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) _let_2)))))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V1c_2E0 u)) (and (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Elub_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s _let_2) V1c_2E0)) ((s A_27a) V2x_2E0))))))) (exists ((V3x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Eglb_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s _let_2) V1c_2E0)) ((s A_27a) V3x_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eposet_2Ecomplete_2E1 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 (_let_3 _let_2))) ((tyop_2Emin_2Efun _let_1) _let_2))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_5))) _let_5))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0))) (let ((_let_2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderlt_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderiso_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderlt_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (V0sob_2E0 u) (V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1b_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_4)))) (= (forall ((V2b_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2b_27_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0sob_2E0)))) (or (= _let_3 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)) (= _let_3 (_let_2 V1b_2E0)))))))) (= (_let_2 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_4)) _let_3))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1r_2E0))) (= (_let_4 (c_2Eposet_2Erelation_2E1 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) _let_5)))) _let_5))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0ls_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) (_let_2 _let_3)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eposet_2Elub_2E3 _let_7) _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Eposet_2Elub_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 c_2Epred__set_2EEMPTY_2E0)) (_let_1 V0s_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) (_let_2 _let_3)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eposet_2Eglb_2E3 _let_7) _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Eposet_2Eglb_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_3) _let_2)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)) c_2Elist_2EEL_2E0)) _let_3))) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Eposet_2Efunction_2E3 _let_7) _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eposet_2Efunction_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eposet_2Efunction_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eposet_2Efunction_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V2b mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EASCIInumbers_2En2s V2b) V1f) V0n) (mono_2Ec_2Estring_2EIMPLODE (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Estring_2Echar ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar V1f) ((mono_2Ec_2Enumposrep_2En2l V2b) V0n)))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Ebottom_2E2 ((s ((tyop_2Epair_2Eprod _let_3) _let_6)) ((c_2Epair_2E_2C_2E2 _let_4) ((s _let_6) V1r_2E0)))) _let_1))) (and (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) (_let_1 V2x_2E0)))) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (=> (V1a V2t) (V0b V2t)) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESWHEN V0b) ((F0 V1a) V0b)))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Epair_2Eprod _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X2_2E0))) (let ((_let_6 (_let_4 X1_2E0))) (let ((_let_7 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_3))) (let ((_let_10 (_let_8 _let_9))) (= (_let_4 (((c_2Ebool_2ECOND_2E3 _let_7) _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_10)) c_2Ebool_2ECOND_2E0)) _let_7))) _let_6))) _let_5)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2p_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Eposet_2Eglb_2E3 ((s ((tyop_2Epair_2Eprod _let_3) _let_7)) ((c_2Epair_2E_2C_2E2 _let_5) ((s _let_7) V1r_2E0)))) (_let_4 V2p_2E0)) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_1))) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2p_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) (_let_1 V3x_2E0)))) _let_2))))))))))) (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2))) (forall ((V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2p_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) (_let_1 V5z_2E0)))) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) _let_2))) (_let_1 V3x_2E0)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) (_let_2 _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eposet_2Egfp_2E3 _let_7) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Eposet_2Egfp_2E0)) _let_7))) _let_4))) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) c_2Elist_2ENIL_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i))))) mono_2Ec_2Ebool_2EF)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_4))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Eposet_2Efunction_2E3 _let_7) _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) c_2Eposet_2Efunction_2E0)) _let_7))) _let_6))) _let_3)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) (_let_1 _let_4)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eposet_2Emonotonic_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eposet_2Emonotonic_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u) (V1b_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Efunction_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V0a_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1b_2E0)) ((s (_let_1 A_27b)) V2f_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0a_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1b_2E0)) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V2f_2E0)) _let_1))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_2) X0_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_2) _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_5) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_7)) c_2Epair_2E_2C_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (tyop_2Emin_2Efun (_let_4 A_27a)))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eposet_2Ecomplete_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eposet_2Ecomplete_2E1 ((s ((tyop_2Epair_2Eprod _let_6) (_let_5 _let_6))) ((c_2Eposet_2Epointwise__lift_2E2 ((s (_let_4 tyop_2Emin_2Ebool)) V1t_2E0)) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) (_let_1 _let_4)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eposet_2Edown__continuous_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eposet_2Edown__continuous_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0r1_2E0 u) (V1r2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0r1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Eacyclic_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_5) (_let_2 _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eposet_2Elfp_2E3 _let_7) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Eposet_2Elfp_2E0)) _let_7))) _let_4))) _let_1)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s _let_3))) (= (_let_6 (c_2Eposet_2Erelation_2E1 _let_5)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Eposet_2Erelation_2E0)) _let_5)))))))))) (forall ((A_27a d) (A_27b d) (F5_2E0 u) (F41_2E0 u) (F38_2E0 u) (F35_2E0 u) (F32_2E0 u) (F29_2E0 u) (F26_2E0 u) (F23_2E0 u) (F20_2E0 u) (F2_2E0 u) (F17_2E0 u) (F14_2E0 u) (F9_2E0 u) (F7_2E0 u) (F6_2E0 u) (F40_2E0 u) (F4_2E0 u) (F39_2E0 u) (F37_2E0 u) (F36_2E0 u) (F34_2E0 u) (F33_2E0 u) (F31_2E0 u) (F30_2E0 u) (F3_2E0 u) (F28_2E0 u) (F27_2E0 u) (F25_2E0 u) (F24_2E0 u) (F22_2E0 u) (F21_2E0 u) (F19_2E0 u) (F18_2E0 u) (F16_2E0 u) (F15_2E0 u) (F13_2E0 u) (F12_2E0 u) (F10_2E0 u) (F1_2E0 u) (F0_2E0 u) (F8_2E0 u) (F11_2E0 u)) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V10x_2E0 u)) (let ((_let_1 ((s A_27b) V10x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F5_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V46x_2E0 u)) (let ((_let_1 ((s A_27b) V46x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F41_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V43x_2E0 u)) (let ((_let_1 ((s A_27b) V43x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F38_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V40x_2E0 u)) (let ((_let_1 ((s A_27b) V40x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F35_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V37x_2E0 u)) (let ((_let_1 ((s A_27b) V37x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F32_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V34x_2E0 u)) (let ((_let_1 ((s A_27b) V34x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F29_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V31x_2E0 u)) (let ((_let_1 ((s A_27b) V31x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F26_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V28x_2E0 u)) (let ((_let_1 ((s A_27b) V28x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F23_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V25x_2E0 u)) (let ((_let_1 ((s A_27b) V25x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F20_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27b) V7x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F2_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V22x_2E0 u)) (let ((_let_1 ((s A_27b) V22x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F17_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V2b_2E0 u) (V4P_2E0 u) (V3Q_2E0 u) (V19x_2E0 u)) (let ((_let_1 ((s A_27b) V19x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_2))) (let ((_let_9 (_let_8 _let_2))) (let ((_let_10 (_let_8 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_8 _let_10)) F14_2E0)) _let_7))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_7) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V4P_2E0 u) (V14x_2E0 u)) (let ((_let_1 ((s A_27b) V14x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F9_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V12x_2E0 u)) (let ((_let_1 ((s A_27b) V12x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F7_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V11x_2E0 u)) (let ((_let_1 ((s A_27b) V11x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F6_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V45x_2E0 u)) (let ((_let_1 ((s A_27b) V45x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F40_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V9x_2E0 u)) (let ((_let_1 ((s A_27b) V9x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F4_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V44x_2E0 u)) (let ((_let_1 ((s A_27b) V44x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F39_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V42x_2E0 u)) (let ((_let_1 ((s A_27b) V42x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F37_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V41x_2E0 u)) (let ((_let_1 ((s A_27b) V41x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F36_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V39x_2E0 u)) (let ((_let_1 ((s A_27b) V39x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F34_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V38x_2E0 u)) (let ((_let_1 ((s A_27b) V38x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F33_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V36x_2E0 u)) (let ((_let_1 ((s A_27b) V36x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F31_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V35x_2E0 u)) (let ((_let_1 ((s A_27b) V35x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F30_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F3_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V33x_2E0 u)) (let ((_let_1 ((s A_27b) V33x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F28_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V32x_2E0 u)) (let ((_let_1 ((s A_27b) V32x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F27_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V30x_2E0 u)) (let ((_let_1 ((s A_27b) V30x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F25_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V29x_2E0 u)) (let ((_let_1 ((s A_27b) V29x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F24_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V27x_2E0 u)) (let ((_let_1 ((s A_27b) V27x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F22_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V26x_2E0 u)) (let ((_let_1 ((s A_27b) V26x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F21_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V24x_2E0 u)) (let ((_let_1 ((s A_27b) V24x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F19_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V2b_2E0 u) (V23x_2E0 u)) (let ((_let_1 ((s A_27b) V23x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2b_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F18_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V21x_2E0 u)) (let ((_let_1 ((s A_27b) V21x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F16_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V20x_2E0 u)) (let ((_let_1 ((s A_27b) V20x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F15_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V18x_2E0 u)) (let ((_let_1 ((s A_27b) V18x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F13_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V17x_2E0 u)) (let ((_let_1 ((s A_27b) V17x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F12_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V15x_2E0 u)) (let ((_let_1 ((s A_27b) V15x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F10_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V3Q_2E0 u) (V6x_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V4P_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1bc Bool) (V4P_2E0 u) (V3Q_2E0 u) (V13x_2E0 u)) (let ((_let_1 ((s A_27b) V13x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (let ((_let_9 (_let_7 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) F8_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1bc))))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V1bc) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))))))) (=> (forall ((V1bc Bool) (V4P_2E0 u) (V3Q_2E0 u) (V16x_2E0 u)) (let ((_let_1 ((s A_27b) V16x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V4P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (let ((_let_9 (_let_7 _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) F11_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V1bc))))) _let_6))) _let_4))) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V1bc) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))))))))))))))) (forall ((V0i_2E0 u) (V1bc Bool) (V2b_2E0 u) (V3Q_2E0 u) (V4P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3Q_2E0))) (let ((_let_4 (_let_2 V4P_2E0))) (let ((_let_5 (_let_2 V2b_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (s (_let_6 _let_8)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s _let_7))) (let ((_let_12 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_13 (c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_12))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (let ((_let_15 (c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_12))) (let ((_let_16 (_let_14 (i_mono_2Etyop_2Emin_2Ebool V1bc)))) (let ((_let_17 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)))) (let ((_let_18 (c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_12))) (let ((_let_19 (c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_12))) (let ((_let_20 (c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_12))) (let ((_let_21 (c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_12))) (and (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F15_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F16_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F17_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F31_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F30_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F32_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F39_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F40_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F41_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F36_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 F37_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_21 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F38_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F33_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F34_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F35_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F28_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F27_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F29_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F24_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F25_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F26_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F21_2E0)) _let_5))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F22_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F23_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F19_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F18_2E0)) _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F20_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F12_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 F13_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_20 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F14_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_19 (_let_2 ((app_2E2 (_let_11 F9_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_19 (_let_2 ((app_2E2 (_let_11 F10_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_19 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_17 F11_2E0)) _let_16))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_18 (_let_2 ((app_2E2 (_let_11 F6_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_18 (_let_2 ((app_2E2 (_let_11 F7_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_18 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_17 F8_2E0)) _let_16))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F4_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 F3_2E0)) _let_4)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_15 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F5_2E0)) _let_5))) _let_4))) _let_3)))))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 F1_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (_let_13 (_let_2 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 F2_2E0)) _let_5))) _let_4))) _let_3)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Emonotonic_2E2 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) ((s _let_3) V1r_2E0)))) ((s (_let_1 A_27a)) V2f_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V2f_2E0)))) (let ((_let_5 (_let_1 V3x_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_3 _let_6)) V1r_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 (_let_8 V0s_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_10 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 (_let_1 (_let_4 _let_5))))) (_let_1 (_let_4 _let_2)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 (_let_1 _let_2))) (= (_let_3 (c_2Eposet_2Ecarrier_2E1 ((s ((tyop_2Epair_2Eprod _let_2) _let_5)) ((c_2Epair_2E_2C_2E2 _let_4) ((s _let_5) V1r_2E0))))) _let_4))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Epair_2Eprod _let_3) (_let_1 _let_3))) V0p_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_3) (c_2Eposet_2Ecarrier_2E1 _let_4)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Eposet_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Eposet_2Ecomplete_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Eposet_2Efunction_2E3 _let_6) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Emonotonic_2E2 _let_4) _let_2)))) (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Egfp_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s (_let_1 A_27a)) V1f_2E0)) ((s A_27a) V2x_2E0))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist A_27a)) (c_2Efcp_2EV2L_2E1 ((s ((tyop_2Efcp_2Ecart A_27a) A_27b)) V0v_2E0)))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V2p) V1n) V0m)))) (= (_let_227 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Eone_2Eone)) (_let_227 c_2Epred__set_2EUNIV_2E0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Enum_2ESUC V1m)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ETC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s (_let_1 A_27b)) V1f_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_4) _let_2) (_let_5 V0t_2E0)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_5 ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_3 (c_2Epair_2EUNCURRY_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (or (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= V0n ((mono_2Ec_2Earithmetic_2E_2B V2p) V1m))) ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s _let_3))) (= (_let_6 (c_2Emin_2E_40_2E1 _let_5)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Emin_2E_40_2E0)) _let_5)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (not (= V0m V1n)) (not ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EEXP V0n) V1m) mono_2Ec_2Enum_2E0) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1m) (= V0n mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ebool_2ERES__ABSTRACT_2E3 _let_7) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EMIN V0m) V1n)) ((mono_2Ec_2Earithmetic_2EMAX V0m) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= (_let_226 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum)) (_let_226 c_2Elist_2EEVERY_2E0)) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V2R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Earithmetic_2ENRC_2E4 _let_6) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2Etransitive_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V4x mono_2Etyop_2Enum_2Enum)) (and (V0P V4x) (forall ((V5y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3E V5y) V4x) (not (V0P V5y)))))) (and (exists ((V1x mono_2Etyop_2Enum_2Enum)) (V0P V1x)) (exists ((V2x mono_2Etyop_2Enum_2Enum)) (forall ((V3y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3E V3y) V2x) (not (V0P V3y)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2E_2A V1n) V0m) ((mono_2Ec_2Earithmetic_2E_2A V2p) V0m)) (or (= V1n V2p) (= V0m mono_2Ec_2Enum_2E0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) V2p) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V2p))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1e1 mono_2Etyop_2Enum_2Enum) (V2e0 mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (=> (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V2e0) V1e1) (= ((mono_2Ec_2Earithmetic_2EMOD V2e0) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1e1) V0n))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n)))) (_let_1 V1x_2E0)) (_let_1 V2y_2E0))))))))))) (forall ((V0L mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Esorting_2ESORTED_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2E_3C))) (= (and (forall ((V2y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2y) (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0L)) ((mono_2Ec_2Eprim__rec_2E_3C V1x) V2y))) (_let_1 V0L)) (_let_1 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V1x) V0L))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V1k) V0n))) (= ((mono_2Ec_2Earithmetic_2EMOD _let_1) V0n) _let_1))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_3) _let_2))) (_let_1 ((c_2Elist_2EDROP_2E2 _let_3) _let_2)))) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u)) (=> (and (forall ((V1R_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V1R_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))))))) (forall ((V2R_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) V0P_2E0)) ((s _let_4) V2R_2E0)))) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3x_2E0)) (_let_2 c_2Elist_2ENIL_2E0)))))))))))) (forall ((V4R_2E0 u) (V5x_2E0 u) (V6y_2E0 u) (V7rst_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_3 V6y_2E0)) (_let_2 V7rst_2E0))))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_7)) V0P_2E0)) ((s _let_6) V4R_2E0)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_2 ((c_2Elist_2ECONS_2E2 (_let_3 V5x_2E0)) _let_4))))))))))))))))) (forall ((V8v_2E0 u) (V9v1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0P_2E0)) ((s _let_3) V8v_2E0)))) ((s _let_1) V9v1_2E0))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V0n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0num_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27a) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_1 _let_3)) V0num_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT2 _let_1))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 _let_5))) (let ((_let_7 (mono_2Ec_2Earithmetic_2EBIT1 _let_5))) (=> (and (V0P mono_2Ec_2Enum_2E0) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_5)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_4)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_7)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_6)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_2))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_7))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_7))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_3))) (forall ((V1v18 mono_2Etyop_2Enum_2Enum)) (V0P V1v18)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_6))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_6))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_4))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_3)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_2)) (V0P (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (forall ((V2v mono_2Etyop_2Enum_2Enum)) (V0P V2v))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Enum_2Enum)) (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_4 ((c_2Erelation_2EWFREC_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) ((mono_2Ec_2Earithmetic_2E_2B V1n) V0m))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF mono_2Ec_2Enum_2E0) V0n) V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Earithmetic_2EODD (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n)))) (forall ((A_27a d) (V0bb_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (or (= (_let_1 V0bb_2E0) (_let_1 c_2Efcp_2EBIT1C_2E0)) (exists ((V2a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (= (_let_1 V0bb_2E0) (_let_1 (c_2Efcp_2EBIT1B_2E1 ((s A_27a) V2a_2E0)))))) (exists ((V1a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit1 A_27a)))) (= (_let_1 V0bb_2E0) (_let_1 (c_2Efcp_2EBIT1A_2E1 ((s A_27a) V1a_2E0))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0m))) (= ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V1n)) (_let_1 V2p)) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V2p))))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD V0k) (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)) mono_2Ec_2Enum_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 _let_2)))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Epair_2E_2C_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (and (= V0n mono_2Ec_2Enum_2E0) (= V1m mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Egcd_2Egcd V0n) V1m) mono_2Ec_2Enum_2E0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (not ((mono_2Ec_2Earithmetic_2E_3E V0m) V1n)))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= (or (V0a (mono_2Ec_2Eprim__rec_2EPRE V1t0)) (= V1t0 mono_2Ec_2Enum_2E0)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0a) V1t0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (not (= V1n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (or (exists ((V4delta mono_2Etyop_2Enum_2Enum)) (and (V0a V4delta) (forall ((V5t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V4delta) V5t) ((mono_2Ec_2Earithmetic_2E_3C_3D V5t) V2t0)) (not (V1b V5t)))) ((mono_2Ec_2Earithmetic_2E_3C_3D V4delta) V2t0))) (forall ((V3t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V3t) V2t0) (not (V1b V3t))))) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V0a) V1b) V2t0))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (c_2Eprim__rec_2Emeasure_2E1 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V1k) V0n))) (and ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0n) (= V1k ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EDIV V1k) V0n)) V0n)) _let_1))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0b1 mono_2Etyop_2Enum_2Enum) (V1b2 mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EEXP V0b1) V2x) ((mono_2Ec_2Earithmetic_2EEXP V1b2) V2x)) (or (= V0b1 V1b2) (= V2x mono_2Ec_2Enum_2E0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EMIN V0m) V1n) ((mono_2Ec_2Earithmetic_2EMAX V0m) V1n)) (= V0m V1n))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EEXP _let_1))) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EDIV V1n) _let_1)) (_let_2 V0m)) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (_let_2 (mono_2Ec_2Enum_2ESUC V0m))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Emin_2E_40_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Emin_2E_40_2E0)) _let_4))))))))) (and (= _let_224 mono_2Ec_2Ebool_2EF) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2Earithmetic_2EODD V0n)) (mono_2Ec_2Earithmetic_2EODD (mono_2Ec_2Enum_2ESUC V0n))))) (forall ((A_27c d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27c) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27c) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epair_2EUNCURRY_2E1 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0)))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1m1_2E0 u) (V2m2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (c_2Ebool_2ERES__ABSTRACT_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V0p_2E0)))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0)))) (= (_let_4 ((app_2E2 (_let_3 V1m1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V2m2_2E0)) _let_1))))))))) (= (_let_2 (_let_3 (_let_2 V1m1_2E0))) (_let_2 (_let_3 (_let_2 V2m2_2E0))))))))) (= (_let_223 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EIMAGE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_223 c_2Epred__set_2EIMAGE_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V0m) (_let_1 V1n)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V1b))) (=> (and (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0a) V2c)) (= ((mono_2Ec_2Egcd_2Egcd V0a) V1b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (_let_1 V2c)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0m) V0m)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (tyop_2Elist_2Elist tyop_2Estring_2Echar)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Eprim__rec_2EPRE V0m)) (mono_2Ec_2Eprim__rec_2EPRE V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1P_2E0 u)) (=> (forall ((V2s_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) V1P_2E0)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 A_27b))) (=> (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Epred__set_2EFINITE_2E1 _let_6))) (not (= _let_6 (_let_5 c_2Epred__set_2EEMPTY_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 (_let_5 (c_2Epred__set_2EREST_2E1 _let_6))))) (_let_1 ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_3 _let_12)) V0f_2E0)) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_6))))) _let_2)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_10 (_let_9 _let_6))) _let_2))))))))))))))))) (forall ((V4v_2E0 u) (V5v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V1P_2E0)) ((s _let_1) V4v_2E0)))) ((s A_27b) V5v1_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s (_let_2 _let_3)) V0R_2E0))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_1) (_let_5 (c_2Equotient_2Erespects_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 _let_4) _let_1))) _let_1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1p) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2D V1p) V0m)) V2n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1p) ((mono_2Ec_2Earithmetic_2E_2B V0m) V2n)))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (= V0m V1n) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1b) ((mono_2Ec_2Eprim__rec_2E_3C V0x) ((mono_2Ec_2Earithmetic_2EEXP V1b) V0x)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V2l2_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)) _let_3) _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool))) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2)))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0x)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EEXP V1n))) (let ((_let_3 (_let_2 _let_1))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (and (= ((mono_2Ec_2Earithmetic_2EDIV (_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0x)))) V1n) _let_3) (= ((mono_2Ec_2Earithmetic_2EDIV _let_3) V1n) (_let_2 ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (= mono_2Ec_2Earithmetic_2EZERO mono_2Ec_2Enum_2E0) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_21_2E1 _let_1))) mono_2Ec_2Ebool_2EF))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V1m))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC (_let_1 V0n)))) (and (= (_let_1 mono_2Ec_2Enum_2E0) V1m) (= (_let_1 (mono_2Ec_2Enum_2ESUC V0n)) _let_2) (= ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enum_2ESUC V1m)) V0n) _let_2) (= ((mono_2Ec_2Earithmetic_2E_2B mono_2Ec_2Enum_2E0) V1m) V1m))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_3 _let_2))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_5) _let_5)) _let_5))) (let ((_let_7 (s _let_6))) (= (_let_7 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMIN V0m) V1n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)) V0m) V1n))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V2p) (= V1n mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2A V2p) V1n)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1j mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EMOD V1j) V0n)) ((mono_2Ec_2Earithmetic_2EMOD V2k) V0n))) V0n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1j) V2k)) V0n))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s _let_2) X1_2E0))) (let ((_let_6 ((s A_27b) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E3 _let_6) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2EpatternMatches_2EPMATCH__ROW__COND__NOT__EX__OR__EQ_2E0)) _let_6))) _let_5))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (forall ((V2x_2E0 u)) (exists ((V3fv_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V2x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s A_27b) V3fv_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1Q_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))))) (and (forall ((V7y mono_2Etyop_2Enum_2Enum) (V8x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V8x)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V7y)))) (let ((_let_4 (mono_2Ec_2Egcd_2Egcd _let_1))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V7y)))) (= (_let_4 _let_5) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) _let_2)) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2D _let_2) _let_3)) _let_5)) (_let_4 ((mono_2Ec_2Earithmetic_2E_2D _let_3) _let_2)))))))))) (forall ((V9y mono_2Etyop_2Enum_2Enum) (V10x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V10x)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V9y)))) (let ((_let_3 (mono_2Ec_2Egcd_2Egcd (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V10x))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V9y)))) (= (_let_3 _let_4) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) _let_1)) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2D _let_1) _let_2)) _let_4)) (_let_3 ((mono_2Ec_2Earithmetic_2E_2D _let_2) _let_1))))))))) (forall ((V5y mono_2Etyop_2Enum_2Enum) (V6x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6x)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V5y)))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2D _let_2) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_4 (mono_2Ec_2Egcd_2Egcd (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6x))))) (= (_let_4 _let_2) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) _let_1)) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2D _let_1) _let_3)) _let_2)) (_let_4 ((mono_2Ec_2Earithmetic_2E_2D _let_3) _let_1))))))))) (forall ((V3y mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V4x)))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2D _let_2) _let_1))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3y)))) (let ((_let_5 ((mono_2Ec_2Earithmetic_2E_2D _let_4) _let_1))) (let ((_let_6 (mono_2Ec_2Egcd_2Egcd _let_2))) (= (_let_6 _let_4) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) _let_3)) ((mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2E_2D _let_3) _let_5)) _let_4)) (_let_6 ((mono_2Ec_2Earithmetic_2E_2D _let_5) _let_3))))))))))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V2x)))) (= ((mono_2Ec_2Egcd_2Egcd _let_1) mono_2Ec_2Enum_2E0) _let_1))) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1x)))) (= ((mono_2Ec_2Egcd_2Egcd _let_1) mono_2Ec_2Enum_2E0) _let_1))) (forall ((V0y mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Egcd mono_2Ec_2Enum_2E0) V0y) V0y))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V2b)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1m)) (_let_1 V0n))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 V1))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V2p))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2EMAX V1m) V0n))) (and (= (and ((mono_2Ec_2Eprim__rec_2E_3C V0n) V2p) ((mono_2Ec_2Eprim__rec_2E_3C V1m) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C _let_2) V2p)) (= (_let_1 _let_2) (or (_let_1 V0n) (_let_1 V1m))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1k mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EDIV V1k) V0n)) V1k)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0p_2E0 u) (V1G_2E0 u) (V2seen_2E0 u)) (let ((_let_1 ((s A_27a) V0p_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 _let_2)))) (let ((_let_5 (_let_4 V1G_2E0))) (let ((_let_6 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 (_let_6 V2seen_2E0))) (let ((_let_8 (c_2Epred__set_2EINSERT_2E2 _let_1))) (let ((_let_9 (c_2EdirGraph_2EEXCLUDE_2E2 _let_5))) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_7)))) (= (_let_6 ((c_2EdirGraph_2EREACH_2E2 (_let_4 (_let_9 _let_7))) _let_1)) (_let_6 (_let_8 (_let_6 ((c_2EdirGraph_2EREACH__LIST_2E2 (_let_4 (_let_9 (_let_6 (_let_8 _let_7))))) ((s _let_2) ((app_2E2 _let_5) _let_1)))))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EEVEN ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) (or (mono_2Ec_2Earithmetic_2EEVEN V1n) (mono_2Ec_2Earithmetic_2EEVEN V0m)))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V2x)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL V0z))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EDIV _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EMOD _let_2))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V2x)))) (and (= (and (= V1y (_let_3 _let_5)) (= (_let_4 _let_5) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_2A _let_5) V1y) _let_2)) (= (= ((mono_2Ec_2Earithmetic_2E_2A _let_1) V1y) _let_2) (and (= (_let_4 _let_1) mono_2Ec_2Enum_2E0) (= V1y (_let_3 _let_1))))))))))) (forall ((A_27a d)) (and (forall ((V0v_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0v_2E0))) (= (_let_1 (((c_2Earithmetic_2Enum__CASE_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) _let_2)))) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3v_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V4f_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (((c_2Earithmetic_2Enum__CASE_2E3 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) (_let_3 V3v_2E0)) _let_2)) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Earithmetic_2ENRC_2E4 _let_9) _let_4) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Earithmetic_2ENRC_2E0)) _let_9))) _let_4))) _let_3))) _let_2)))))))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V3t) (not (V0b V3t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V4t) (V1a V4t)) (((F1 V1a) V0b) V4t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V2x) (and (((mono_2Ec_2ETemporal__Logic_2EWHEN (F0 V0b)) ((F1 V1a) V0b)) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V2x))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V2c))) (= (and (_let_1 V0a) (forall ((V3d mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V3d))) (=> (and (_let_1 V1b) (_let_1 V0a)) (_let_1 V2c)))) (_let_1 V1b)) (((mono_2Ec_2Egcd_2Eis__gcd V0a) V1b) V2c)))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (= (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V2m mono_2Etyop_2Enum_2Enum)) (and (=> (= V0n mono_2Ec_2Enum_2E0) (V1P mono_2Ec_2Enum_2E0)) (=> (= V0n (mono_2Ec_2Enum_2ESUC V2m)) (V1P V2m)))) (V1P (mono_2Ec_2Eprim__rec_2EPRE V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0n)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1m)))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EMOD _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EMODEQ _let_1))) (let ((_let_5 (mono_2Ec_2Earithmetic_2ENUMERAL V1m))) (let ((_let_6 (mono_2Ec_2Earithmetic_2ENUMERAL V0n))) (let ((_let_7 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V1m)))) (let ((_let_8 (mono_2Ec_2Earithmetic_2EMOD _let_7))) (let ((_let_9 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_5))) (let ((_let_10 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EMODEQ _let_10))) (and (=> _let_9 ((_let_11 _let_2) (_let_3 _let_10))) (=> _let_9 ((_let_11 _let_7) (_let_8 _let_10))) (=> _let_9 ((_let_4 _let_7) (_let_8 _let_1))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_6) _let_5) ((_let_4 _let_2) (_let_3 _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (mono_2Ec_2Edivides_2Eprime V0p) (or ((mono_2Ec_2Edivides_2Edivides V0p) V1b) (((mono_2Ec_2Egcd_2Eis__gcd V0p) V1b) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_3 (c_2Epair_2EUNCURRY_2E1 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))))))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V2x) (and (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V2x)))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V2n))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1q) V0p) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n)) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V0p) V1q)) ((mono_2Ec_2Earithmetic_2EDIV (_let_1 V0p)) (_let_1 V1q)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2D V2x))) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D V0z) V1y) ((mono_2Ec_2Earithmetic_2E_3C_3D V2x) V1y)) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1y)) (_let_1 V0z))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF (mono_2Ec_2Enum_2ESUC V0n)) (mono_2Ec_2Enum_2ESUC V1m)) ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (not ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n)) (= V0n mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_1) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V1n)) V2p)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) V2p) (_let_1 V1n)) (_let_1 V2p)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 ((s (_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 _let_2))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) V0))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0p))) (= (= V2n V1m) (= ((mono_2Ec_2Earithmetic_2E_2A V2n) _let_1) ((mono_2Ec_2Earithmetic_2E_2A V1m) _let_1))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (= (_let_222 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_222 c_2Epair_2ESND_2E0)) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2x) (= (= ((mono_2Ec_2Earithmetic_2E_2A V2x) V1y) V0z) (and (= V1y ((mono_2Ec_2Earithmetic_2EDIV V0z) V2x)) (= ((mono_2Ec_2Earithmetic_2EMOD V0z) V2x) mono_2Ec_2Enum_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V3q) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2B V2p) V3q)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2Enat__elim____magic V0n) V0n)) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 (_let_1 V1Q_2E0))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2e mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EEXP ((mono_2Ec_2Earithmetic_2EMOD V0x) V1n)) V2e)) V1n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EEXP V0x) V2e)) V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 _let_2))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))))) (and (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V3n) (= ((mono_2Ec_2Earithmetic_2EMOD V2m) V3n) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2E0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2m) V3n))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (= ((mono_2Ec_2Earithmetic_2EDIV V0m) V1n) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2E0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) V1n)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1ls_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_4 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1ls_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((app_2E2 ((s (_let_4 _let_1)) V2f_2E0)) _let_3))) (_let_2 V0s_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 _let_1)) V2f_2E0)) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27b)) V1ls_2E0)))))))) (_let_2 V0s_2E0))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) V0))) (forall ((V0r Bool) (V1p Bool) (V2q Bool)) (let ((_let_1 (and V2q V1p))) (and (= _let_1 _let_1) (= (and V0r V2q V1p) (and V1p V0r V2q)) (= (and V2q V0r V1p) (and V0r V1p V2q)) (= (and V1p V2q V1p) (and V1p V2q)) (= (and V1p V1p) V1p)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (not (= V0m V1n)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EMIN V0m) V1n)) ((mono_2Ec_2Earithmetic_2EMAX V0m) V1n)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (exists ((V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0))) V1m))) (or (= V0n _let_1) (= V0n ((mono_2Ec_2Earithmetic_2E_2B _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= (_let_4 (((c_2Earithmetic_2Enum__CASE_2E3 _let_6) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2Earithmetic_2Enum__CASE_2E0)) _let_6))) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1r_2E0 u) (V2p_2E0 u) (V3i_2E0 u) (V4g_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (=> (= (_let_1 ((((c_2EpatternMatches_2EPMATCH__ROW_2E4 ((s (_let_2 A_27c)) V2p_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V4g_2E0)) ((s (_let_2 A_27a)) V1r_2E0)) ((s A_27c) V3i_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V0y_2E0)))) (exists ((V5x_2E0 u)) (let ((_let_1 ((s A_27b) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s A_27a))) (and (= (_let_3 V0y_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27a)) V1r_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 ((s (_let_2 A_27c)) V2p_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V4g_2E0)) ((s A_27c) V3i_2E0)) _let_1)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V2p))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V0m)) (_let_1 V1n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V0m) (_let_1 V1n)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EDIV V2x))) (= ((mono_2Ec_2Earithmetic_2EDIV (_let_1 V0m)) V1n) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (_let_1 V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2ERES__EXISTS_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Ellist_2ELCONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27b)))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_6 ((tyop_2Emin_2Efun A_27d) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EerrorStateMonad_2EMCOMP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EerrorStateMonad_2EMCOMP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0t2_2E0 u) (V1t1_2E0 u) (V2t_2E0 u) (V3h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_3)))) (let ((_let_5 (_let_4 V0t2_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 (_let_6 V1t1_2E0))) (let ((_let_8 (c_2Elist_2ECONS_2E2 ((s A_27c) V3h_2E0)))) (let ((_let_9 (tyop_2Elist_2Elist A_27b))) (let ((_let_10 (s (tyop_2Elist_2Elist _let_9)))) (let ((_let_11 (_let_10 V2t_2E0))) (let ((_let_12 (s _let_9))) (and (= (_let_12 (c_2Elist_2EFLAT_2E1 (_let_10 ((c_2Elist_2ECONS_2E2 (_let_12 c_2Elist_2ENIL_2E0)) _let_11)))) (_let_12 (c_2Elist_2EFLAT_2E1 _let_11))) (= (_let_6 (c_2Elist_2EFLAT_2E1 (_let_4 ((c_2Elist_2ECONS_2E2 (_let_6 (_let_8 _let_7))) _let_5)))) (_let_6 (_let_8 (_let_6 (c_2Elist_2EFLAT_2E1 (_let_4 ((c_2Elist_2ECONS_2E2 _let_7) _let_5))))))) (= (_let_2 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_1)) c_2Elist_2ENIL_2E0))) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V1x))) (=> (and (not (= _let_1 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2EDIV V1x) V0y))) V0y))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0y)) (= ((mono_2Ec_2Earithmetic_2EMOD _let_1) V0y) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2EMOD V1x) V0y)))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (V0f V1n)) (V0f (mono_2Ec_2Enum_2ESUC V1n)))) (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0f))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n) V0m) (or (= V1n mono_2Ec_2Enum_2E0) (= V0m mono_2Ec_2Enum_2E0)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2i) ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V2i) V1m)) V0n))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1c) (= (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1c) (V0P V2n))) (and (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3n) ((mono_2Ec_2Earithmetic_2E_2D V1c) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (V0P V3n))) (V0P ((mono_2Ec_2Earithmetic_2E_2D V1c) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Enum_2ESUC V1m)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS__UNIQUE_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_2))) _let_2))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Enum_2Enum)) (_let_2 (_let_2 tyop_2Emin_2Ebool)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0a) V2t) (not (V0a V2t)))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EALWAYS V0a) ((mono_2Ec_2ETemporal__Logic_2EWHEN F0) (F1 V0a))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_4 _let_1))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Eind__type_2ENUMPAIR V0x) V1y))) (and (= (mono_2Ec_2Eind__type_2ENUMSND _let_1) V1y) (= (mono_2Ec_2Eind__type_2ENUMFST _let_1) V0x)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum) (V2q mono_2Etyop_2Enum_2Enum)) (=> (exists ((V3r mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V3r) V0n) (= V1k ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V2q) V0n)) V3r)))) (= ((mono_2Ec_2Earithmetic_2EDIV V1k) V0n) V2q))) (forall ((A_27a d) (V0x1_2E0 u) (V1l1_2E0 u) (V2x2_2E0 u) (V3l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l2_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V1l1_2E0))) (let ((_let_5 (s A_27a))) (=> (= (_let_1 ((c_2Elist_2ESNOC_2E2 (_let_5 V0x1_2E0)) _let_4)) (_let_1 ((c_2Elist_2ESNOC_2E2 (_let_5 V2x2_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) V1y) ((mono_2Ec_2Eprim__rec_2E_3C V0x) ((mono_2Ec_2Earithmetic_2E_2B V1y) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V0g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0g_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_3 V1f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) ((mono_2Ec_2Earithmetic_2EABS__DIFF (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_6) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_3 (_let_1 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0g_2E0))) (let ((_let_6 (_let_4 V1f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EABS__DIFF (j_mono_2Etyop_2Enum_2Enum (_let_9 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_6) _let_2)))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_9 ((c_2Epred__set_2ESUM__IMAGE_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_5))) _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a0_27_2E0 u) (V3a1_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3a1_27_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a0_27_2E0))) (let ((_let_5 (_let_1 V1a1_2E0))) (let ((_let_6 (_let_3 V0a0_2E0))) (= (and (= _let_6 _let_4) (= _let_5 _let_2)) (= (_let_1 ((c_2Elist_2ECONS_2E2 _let_6) _let_5)) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= (= V2n mono_2Ec_2Enum_2E0) (F0 V2n))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0g_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1f_2E0))) (= (_let_3 (((c_2Earithmetic_2Enum__CASE_2E3 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_4) _let_2)) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V2n)))) _let_4) (_let_3 ((app_2E2 _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V2n))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2EEncode_2Etree A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2EDecode_2Ewf__decoder_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (=> (mono_2Ec_2Estring_2EisDigit V0c) (= (mono_2Ec_2EASCIInumbers_2EHEX (mono_2Ec_2EASCIInumbers_2EUNHEX V0c)) V0c))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_2 (s A_27a))) (= (_let_2 (c_2Eind__type_2EFNIL_2E1 _let_1)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) c_2Eind__type_2EFNIL_2E0)) _let_1)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n)) (= V0n V1m))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (or (exists ((V2m mono_2Etyop_2Enum_2Enum)) (V0P (mono_2Ec_2Enum_2ESUC V2m))) (V0P mono_2Ec_2Enum_2E0)) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)))) (forall ((A_27a d) (V0b3_2E0 u) (V1b2_2E0 u) (V2b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b3_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (let ((_let_4 (_let_1 V2b1_2E0))) (let ((_let_5 (c_2Ebag_2EBAG__DISJOINT_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2))))) (and (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_3) _let_2))) _let_7) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__DISJOINT_2E2 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_3))) _let_2)))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_3))) _let_7) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EDROP_2E2 ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) _let_2)) (_let_1 c_2Elist_2ENIL_2E0))))) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V1x))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V2y) V0z)) ((mono_2Ec_2Earithmetic_2EEXP (_let_1 V2y)) V0z)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) mono_2Ec_2Enum_2E0) (= V0n mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISR_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0)))) (exists ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_1 V0x_2E0) (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) V1r_2E0)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1q mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V1q) V0n)) V2r)) V0n) ((mono_2Ec_2Earithmetic_2EMOD V2r) V0n))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X2)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EDecode_2Eenc2dec_2E3 _let_7) _let_5) _let_2)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EDecode_2Eenc2dec_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 _let_1))) (exists ((V2fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V2fv_2E0)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n) ((mono_2Ec_2Earithmetic_2E_2B V0n) V0n))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Elist_2Elist _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Elist_2EMAP_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EMAP_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (exists ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)) (exists ((V2n mono_2Etyop_2Enum_2Enum)) (and (V0P V2n) (forall ((V3m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3m) V2n) (not (V0P V3m)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)) (and (V0P mono_2Ec_2Enum_2E0) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (V0P (mono_2Ec_2Enum_2ESUC V2n)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2Ebool_2ERES__SELECT_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__SELECT_2E0)) _let_4))) _let_3))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0m)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2ESUB__BAG_2E2 _let_2) (_let_1 V1b2_2E0)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (= ((mono_2Ec_2Earithmetic_2EMOD (mono_2Ec_2Enum_2ESUC V1a)) V0n) ((mono_2Ec_2Earithmetic_2EMOD (mono_2Ec_2Enum_2ESUC V2b)) V0n)) (= ((mono_2Ec_2Earithmetic_2EMOD V1a) V0n) ((mono_2Ec_2Earithmetic_2EMOD V2b) V0n))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0m))) (= (= (_let_1 V1n) (_let_1 V2p)) (or (= V1n V2p) (= V0m mono_2Ec_2Enum_2E0))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epred__set_2ECHOICE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epred__set_2ECHOICE_2E0)) _let_2))))))) (forall ((A_27a d) (V0m_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (=> (and (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_2)))) (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2Eis__measure__maximal_2E3 ((s (_let_1 tyop_2Enum_2Enum)) V0m_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s A_27a) V2x_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enum_2ESUC V1n)) V0m))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (not (= (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2B V0n) V0n)) ((mono_2Ec_2Earithmetic_2E_2B V1m) V1m)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X3)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_8) _let_1)))) (let ((_let_12 (_let_3 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_4) _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_6) _let_13))) (let ((_let_15 (s _let_11))) (= (_let_15 ((((c_2EDecode_2Edecode__sum_2E4 _let_10) _let_7) _let_5) _let_2)) (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2EDecode_2Edecode__sum_2E0)) _let_10))) _let_7))) _let_5))) _let_2))))))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0s_2E0)) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EDIV mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Enum_2E0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= (= V1y (mono_2Ec_2Enum_2ESUC V0x)) ((F0 V0x) V1y))) (= mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Erelation_2ERTC_2Emono_2Etyop_2Enum_2Enum F0)))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2)))) (= _let_3 _let_2))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m) ((mono_2Ec_2Earithmetic_2EABS__DIFF V1m) V0n))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Estring_2Echar))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 (_let_3 (_let_3 _let_2)))))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMAX V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2EMAX V1n) V2p)) ((mono_2Ec_2Earithmetic_2EMAX (_let_1 V1n)) V2p)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Erelation_2ERTC_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0r_2E0 u) (V1tc_27_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (exists ((V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V6z_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (let ((_let_9 (_let_8 V0r_2E0))) (let ((_let_10 (s _let_7))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_10 ((c_2Epair_2E_2C_2E2 (_let_1 V4x_2E0)) _let_3))) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_10 ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 _let_9))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1tc_27_2E0)) (_let_1 V4x_2E0)))) (_let_1 V5y_2E0))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) ((s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)) V0r_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_7) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_8 (c_2Eset__relation_2Etc_2E1 (_let_8 V0r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V1tc_27_2E0)) _let_3))) _let_2))))))))))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) (=> (forall ((V2m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V1n) (V0P V2m))) (V0P V1n))) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (V0P V3n)))) (mono_2Ec_2Erelation_2Etransitive_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2E_3C) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EABS__DIFF V0x) V1y)) V1y))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V0n) mono_2Ec_2Enum_2E0)) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2D V2x))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C V0z))) (= (and (_let_2 V2x) (_let_2 V1y)) ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V1y)) (_let_1 V0z)))))) (forall ((A_27a d) (V0ll1_2E0 u) (V1ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) (let ((_let_3 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (= (_let_3 (_let_2 (_let_1 V0ll1_2E0))) (_let_3 (_let_2 (_let_1 V1ll2_2E0)))))))) (= (_let_1 V0ll1_2E0) (_let_1 V1ll2_2E0))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Eprim__rec_2EPRE V1m)) (mono_2Ec_2Eprim__rec_2EPRE V0n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V2b))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_3 (= V2b mono_2Ec_2Enum_2E0))) (= (or (and (= V0n mono_2Ec_2Enum_2E0) _let_3) (and _let_3 ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1m)) (= V2b _let_2) (and ((mono_2Ec_2Eprim__rec_2E_3C _let_2) V2b) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1m)) (_let_1 V0n))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V1n)) V0m) (not ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2EEVEN V0n)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0q mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EDIV V0q) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0q)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EEVEN V0n) (exists ((V1m mono_2Etyop_2Enum_2Enum)) (= V0n ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1m))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Earithmetic_2EEVEN ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EODD ((mono_2Ec_2Earithmetic_2EEXP V1m) V0n)) (or (mono_2Ec_2Earithmetic_2EODD V1m) (= V0n mono_2Ec_2Enum_2E0)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V1a) V3t) (not (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE (F0 V1a)) V0b) V2x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V2x))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 _let_1))) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (and (mono_2Ec_2Earithmetic_2EODD V0m) (mono_2Ec_2Earithmetic_2EODD V1n)) (mono_2Ec_2Earithmetic_2EODD ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Estring_2Echar)) (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2z) (= ((mono_2Ec_2Eprim__rec_2E_3C V0x) ((mono_2Ec_2Earithmetic_2EDIV V1y) V2z)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2B V0x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V2z)) V1y)))) (and (= (mono_2Ec_2EASCIInumbers_2EHEX _let_152) _let_221) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_219) _let_218) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_217) _let_216) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_214) _let_213) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_212) _let_211) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_210) _let_209) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_208) _let_207) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_206) _let_205) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_203) _let_202) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_201) _let_200) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_197) _let_195) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_35) _let_191) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_188) _let_186) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_185) _let_184) (= (mono_2Ec_2EASCIInumbers_2EHEX _let_19) _let_181) (= (mono_2Ec_2EASCIInumbers_2EHEX mono_2Ec_2Enum_2E0) _let_178)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (forall ((V2x_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 ((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V2x_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V0b1_2E0)) (_let_1 V1b2_2E0))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (or (V1a V3t) (V0b V3t)) (((F0 V1a) V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN V0b) ((F0 V1a) V0b)) V2x)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= (_let_1 ((mono_2Ec_2Earithmetic_2EEXP V0x) V1y)) (and (_let_1 V0x) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1y))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_2)) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 (c_2Elist_2EFRONT_2E1 _let_2)))))))))) (forall ((A_27a d) (V0c mono_2Etyop_2Enum_2Enum) (V1i_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (not (= (_let_3 (((c_2Eind__type_2EZCONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0c))) ((s A_27a) V1i_2E0)) ((s (_let_1 _let_2)) V2r_2E0))) (_let_3 c_2Eind__type_2EZBOT_2E0))))))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V1m))) (= (_let_1 (mono_2Ec_2Enum_2ESUC V2n)) ((mono_2Ec_2Earithmetic_2E_2A V1m) (_let_1 V2n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP V0m) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 (_let_1 V0l1_2E0)) (_let_1 V1l2_2E0)))) (exists ((V2x1_2E0 u) (V3x2_2E0 u) (V4x3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4x3_2E0))) (let ((_let_3 (_let_1 V3x2_2E0))) (let ((_let_4 (c_2Elist_2EAPPEND_2E2 (_let_1 V2x1_2E0)))) (and (= (_let_1 V1l2_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_2))) _let_3))) (= (_let_1 V0l1_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1s_2E0 u) (V2t (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s (_let_1 tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EINJ_2E3 _let_3) _let_2) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V2t))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) ((c_2Eset__relation_2Enum__order_2E2 _let_3) _let_2))) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V0x) V1n))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (= (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V0x) V2k)) V1n) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V2k)) ((mono_2Ec_2Eprim__rec_2E_3C V2k) ((mono_2Ec_2Earithmetic_2E_2D V1n) _let_1)))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l1_2E0))) (let ((_let_3 (_let_1 V1l2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (not (and ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Enum_2ESUC V0m))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27d))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_6) _let_1))))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EDecode_2Edecode__blist_2E3 _let_8) _let_5) _let_4)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EDecode_2Edecode__blist_2E0)) _let_8))) _let_5))) _let_4)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_4 (_let_1 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Eind__type_2EINJA_2E3 _let_4) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_5 _let_7)) c_2Eind__type_2EINJA_2E0)) _let_4))) _let_3))) _let_2))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (mono_2Ec_2Earithmetic_2EEVEN V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (mono_2Ec_2Earithmetic_2EEVEN ((mono_2Ec_2Earithmetic_2EEXP V0m) V1n)))) (forall ((V0 (-> (-> Bool Bool) (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 _let_3)) ((tyop_2Emin_2Efun _let_3) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_3)))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) (= V0m V1n))) (= (_let_174 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_174 c_2Epair_2EUNCURRY_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (s (_let_3 tyop_2Enum_2Enum)))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s (_let_3 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1x) V2y)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EDIV V1x) V0n)) ((mono_2Ec_2Earithmetic_2EDIV V2y) V0n)))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2)))))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2D V0p) V1m)) (mono_2Ec_2Enum_2ESUC V0p))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (let ((_let_2 (s (tyop_2Ellist_2Ellist A_27a)))) (= (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (and (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) ((s (tyop_2Ellist_2Ellist A_27a)) V2t_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)) (= V0m (mono_2Ec_2Enum_2ESUC V3n))))) (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V1h_2E0)) (_let_2 V2t_2E0))))) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1c mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B V0a) V1c)) V1c) V0a)) (forall ((A_27b d) (A_27c d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27f) A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27e))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27e) A_27f)) (_let_3 A_27c)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Equotient_2E_2D_2D_3E_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F2 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V3n mono_2Etyop_2Enum_2Enum)) (= (F3 V3n) (= V3n mono_2Ec_2Enum_2E0))) (=> (forall ((V0f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1a mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum) (V4q mono_2Etyop_2Enum_2Enum)) (= (((((F4 V0f) V1a) V2m) V3n) V4q) (V0f ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Earithmetic_2E_2B V1a) V4q)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V2m) ((mono_2Ec_2Earithmetic_2E_2A V3n) V4q))) V3n))))) (=> (forall ((V1a mono_2Etyop_2Enum_2Enum) (V0f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (= ((((F2 V1a) V0f) V2m) V3n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F3 V3n)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Eprim__rec_2E_3C V2m) V3n)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1a) V2m)) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((((F4 V0f) V1a) V2m) V3n)) (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2m) V3n)))))))) (=> (forall ((V0f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1a mono_2Etyop_2Enum_2Enum)) (= ((F1 V0f) V1a) (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((F2 V1a) V0f)))) (=> (forall ((V0f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (= (F0 V0f) (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F1 V0f)))) (= mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Eprim__rec_2Emeasure_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum) mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) F0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) _let_1) (or (and (= V0m mono_2Ec_2Enum_2E0) (= V1n _let_1)) (and (= V0m _let_1) (= V1n mono_2Ec_2Enum_2E0)))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V3t) (not (V0b V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V2x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (F0 V0b)) V2x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V2x)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (or (= V0m mono_2Ec_2Enum_2E0) (= V1n mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2EPREIMAGE_2E3 _let_6) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EPREIMAGE_2E0)) _let_6))) _let_3))) _let_1)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMIN V1m) V0n))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C V2p))) (and (= (and (_let_2 V1m) (_let_2 V0n)) (_let_2 _let_1)) (= (or ((mono_2Ec_2Eprim__rec_2E_3C V1m) V2p) ((mono_2Ec_2Eprim__rec_2E_3C V0n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V2p)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0n)) (mono_2Ec_2Enum_2ESUC V1m)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m))) (= (_let_173 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_173 c_2Epair_2E_2C_2E0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Ecardinal_2EHAS__SIZE_2E2 _let_2))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (= (exists ((V2a_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V3t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s A_27a) V2a_2E0))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_4) _let_2)))) (= (_let_1 V1s_2E0) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2EHAS__SIZE_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V1n) V0m)) ((mono_2Ec_2Earithmetic_2E_2B V2p) V0m)) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s A_27c))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun _let_1) A_27c)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) A_27c))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDL_2E0)) _let_8))) _let_5))) _let_3)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= (forall ((V3q mono_2Etyop_2Enum_2Enum) (V4r mono_2Etyop_2Enum_2Enum)) (=> (and (= V1m ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3q) V2n)) V4r)) ((mono_2Ec_2Eprim__rec_2E_3C V4r) V2n)) (V0P V4r))) (V0P ((mono_2Ec_2Earithmetic_2EMOD V1m) V2n))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 tyop_2Emin_2Ebool)) (_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Equotient_2E_2D_2D_3E_2E2 _let_5) _let_2)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_5))) _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 _let_4))) (let ((_let_6 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_5)))) (let ((_let_7 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_5)))) (let ((_let_8 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_9 (_let_8 _let_6))) (let ((_let_10 (mono_2Ec_2Earithmetic_2E_3E_3D _let_3))) (let ((_let_11 ((mono_2Ec_2Earithmetic_2E_2B _let_6) V0x))) (let ((_let_12 ((mono_2Ec_2Earithmetic_2E_2B _let_7) V0x))) (let ((_let_13 (_let_8 _let_7))) (let ((_let_14 (mono_2Ec_2Earithmetic_2EBIT1 _let_4))) (let ((_let_15 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_14)))) (let ((_let_16 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_14)))) (let ((_let_17 ((mono_2Ec_2Earithmetic_2E_2B _let_15) V0x))) (let ((_let_18 (_let_8 _let_15))) (let ((_let_19 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_20 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_19)))) (let ((_let_21 (mono_2Ec_2Earithmetic_2E_3E _let_3))) (let ((_let_22 (_let_8 _let_16))) (let ((_let_23 ((mono_2Ec_2Earithmetic_2E_2B _let_16) V0x))) (let ((_let_24 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_19)))) (let ((_let_25 ((mono_2Ec_2Earithmetic_2E_2B _let_20) V0x))) (let ((_let_26 (_let_8 _let_20))) (let ((_let_27 (mono_2Ec_2Earithmetic_2ENUMERAL _let_5))) (let ((_let_28 ((mono_2Ec_2Earithmetic_2E_2B _let_24) V0x))) (let ((_let_29 (_let_8 _let_24))) (let ((_let_30 ((mono_2Ec_2Earithmetic_2E_2B _let_27) V0x))) (let ((_let_31 (_let_8 _let_27))) (let ((_let_32 (mono_2Ec_2Earithmetic_2ENUMERAL _let_14))) (let ((_let_33 (mono_2Ec_2Earithmetic_2ENUMERAL _let_19))) (let ((_let_34 ((mono_2Ec_2Earithmetic_2E_2B _let_32) V0x))) (let ((_let_35 (_let_8 _let_32))) (let ((_let_36 (mono_2Ec_2Earithmetic_2ENUMERAL _let_4))) (let ((_let_37 ((mono_2Ec_2Earithmetic_2E_2B _let_33) V0x))) (let ((_let_38 (_let_8 _let_36))) (let ((_let_39 ((mono_2Ec_2Earithmetic_2E_2B _let_36) V0x))) (let ((_let_40 (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)))) (let ((_let_41 (_let_8 _let_33))) (and (= (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u) (V6e5_2E0 u) (V7e6_2E0 u) (V8e7_2E0 u) (V9e8_2E0 u) (V10e9_2E0 u) (V11e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V10e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))) (= _let_3 _let_6)) (= (exists ((V33l_27_2E0 u) (V34e1_2E0 u) (V35e2_2E0 u) (V36e3_2E0 u) (V37e4_2E0 u) (V38e5_2E0 u) (V39e6_2E0 u) (V40e7_2E0 u) (V41e8_2E0 u) (V42e9_2E0 u) (V43e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V34e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V35e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V36e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V37e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V38e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V39e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V40e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V41e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V42e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V43e10_2E0)) (_let_1 V33l_27_2E0))))))))))))))))))))))))) (_let_21 _let_7)) (= (_let_10 _let_6) (exists ((V55l_27_2E0 u) (V56e1_2E0 u) (V57e2_2E0 u) (V58e3_2E0 u) (V59e4_2E0 u) (V60e5_2E0 u) (V61e6_2E0 u) (V62e7_2E0 u) (V63e8_2E0 u) (V64e9_2E0 u) (V65e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V56e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V57e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V58e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V59e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V60e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V61e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V62e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V63e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V64e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V65e10_2E0)) (_let_1 V55l_27_2E0)))))))))))))))))))))))))) (= (exists ((V66l_27_2E0 u) (V67e1_2E0 u) (V68e2_2E0 u) (V69e3_2E0 u) (V70e4_2E0 u) (V71e5_2E0 u) (V72e6_2E0 u) (V73e7_2E0 u) (V74e8_2E0 u) (V75e9_2E0 u) (V76e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V66l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V67e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V68e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V69e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V70e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V71e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V72e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V73e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V74e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V75e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V76e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_11) _let_3)) (= (exists ((V77l_27_2E0 u) (V78e1_2E0 u) (V79e2_2E0 u) (V80e3_2E0 u) (V81e4_2E0 u) (V82e5_2E0 u) (V83e6_2E0 u) (V84e7_2E0 u) (V85e8_2E0 u) (V86e9_2E0 u) (V87e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V77l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V78e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V79e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V80e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V81e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V82e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V83e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V84e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V85e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V86e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V87e10_2E0)) _let_2)))))))))))))))))))))))))) (_let_10 _let_11)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_9) _let_3) (exists ((V88l_27_2E0 u) (V89e1_2E0 u) (V90e2_2E0 u) (V91e3_2E0 u) (V92e4_2E0 u) (V93e5_2E0 u) (V94e6_2E0 u) (V95e7_2E0 u) (V96e8_2E0 u) (V97e9_2E0 u) (V98e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V88l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V89e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V90e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V91e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V92e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V93e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V94e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V95e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V96e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V97e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V98e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_3 _let_9) (exists ((V132l_27_2E0 u) (V133e1_2E0 u) (V134e2_2E0 u) (V135e3_2E0 u) (V136e4_2E0 u) (V137e5_2E0 u) (V138e6_2E0 u) (V139e7_2E0 u) (V140e8_2E0 u) (V141e9_2E0 u) (V142e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V132l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V133e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V134e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V135e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V136e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V137e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V138e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V139e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V140e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V141e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V142e10_2E0)) _let_2))))))))))))))))))))))))))) (= (= _let_9 _let_3) (exists ((V143l_27_2E0 u) (V144e1_2E0 u) (V145e2_2E0 u) (V146e3_2E0 u) (V147e4_2E0 u) (V148e5_2E0 u) (V149e6_2E0 u) (V150e7_2E0 u) (V151e8_2E0 u) (V152e9_2E0 u) (V153e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V143l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V144e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V145e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V146e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V147e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V148e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V149e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V150e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V151e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V152e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V153e10_2E0)) _let_2))))))))))))))))))))))))))) (= (= _let_7 _let_3) (exists ((V163e1_2E0 u) (V164e2_2E0 u) (V165e3_2E0 u) (V166e4_2E0 u) (V167e5_2E0 u) (V168e6_2E0 u) (V169e7_2E0 u) (V170e8_2E0 u) (V171e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V163e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V164e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V165e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V166e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V167e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V168e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V169e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V170e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V171e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))))))) (= (exists ((V172l_27_2E0 u) (V173e1_2E0 u) (V174e2_2E0 u) (V175e3_2E0 u) (V176e4_2E0 u) (V177e5_2E0 u) (V178e6_2E0 u) (V179e7_2E0 u) (V180e8_2E0 u) (V181e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V173e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V174e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V175e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V176e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V177e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V178e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V179e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V180e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V181e9_2E0)) (_let_1 V172l_27_2E0))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_15) _let_3)) (= (_let_21 _let_15) (exists ((V182l_27_2E0 u) (V183e1_2E0 u) (V184e2_2E0 u) (V185e3_2E0 u) (V186e4_2E0 u) (V187e5_2E0 u) (V188e6_2E0 u) (V189e7_2E0 u) (V190e8_2E0 u) (V191e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V183e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V184e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V185e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V186e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V187e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V188e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V189e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V190e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V191e9_2E0)) (_let_1 V182l_27_2E0)))))))))))))))))))))))) (= (_let_10 _let_7) (exists ((V202l_27_2E0 u) (V203e1_2E0 u) (V204e2_2E0 u) (V205e3_2E0 u) (V206e4_2E0 u) (V207e5_2E0 u) (V208e6_2E0 u) (V209e7_2E0 u) (V210e8_2E0 u) (V211e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V203e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V204e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V205e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V206e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V207e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V208e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V209e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V210e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V211e9_2E0)) (_let_1 V202l_27_2E0)))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_3) (exists ((V212l_27_2E0 u) (V213e1_2E0 u) (V214e2_2E0 u) (V215e3_2E0 u) (V216e4_2E0 u) (V217e5_2E0 u) (V218e6_2E0 u) (V219e7_2E0 u) (V220e8_2E0 u) (V221e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V212l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V213e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V214e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V215e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V216e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V217e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V218e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V219e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V220e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V221e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_10 _let_13) (exists ((V242l_27_2E0 u) (V243e1_2E0 u) (V244e2_2E0 u) (V245e3_2E0 u) (V246e4_2E0 u) (V247e5_2E0 u) (V248e6_2E0 u) (V249e7_2E0 u) (V250e8_2E0 u) (V251e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V242l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V243e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V244e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V245e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V246e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V247e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V248e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V249e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V250e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V251e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V292e1_2E0 u) (V293e2_2E0 u) (V294e3_2E0 u) (V295e4_2E0 u) (V296e5_2E0 u) (V297e6_2E0 u) (V298e7_2E0 u) (V299e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V292e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V293e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V294e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V295e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V296e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V297e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V298e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V299e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_3 _let_15)) (= (_let_21 _let_16) (exists ((V317l_27_2E0 u) (V318e1_2E0 u) (V319e2_2E0 u) (V320e3_2E0 u) (V321e4_2E0 u) (V322e5_2E0 u) (V323e6_2E0 u) (V324e7_2E0 u) (V325e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V318e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V319e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V320e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V321e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V322e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V323e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V324e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V325e8_2E0)) (_let_1 V317l_27_2E0)))))))))))))))))))))) (= (exists ((V326l_27_2E0 u) (V327e1_2E0 u) (V328e2_2E0 u) (V329e3_2E0 u) (V330e4_2E0 u) (V331e5_2E0 u) (V332e6_2E0 u) (V333e7_2E0 u) (V334e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V327e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V328e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V329e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V330e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V331e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V332e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V333e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V334e8_2E0)) (_let_1 V326l_27_2E0))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_3)) (= (exists ((V344l_27_2E0 u) (V345e1_2E0 u) (V346e2_2E0 u) (V347e3_2E0 u) (V348e4_2E0 u) (V349e5_2E0 u) (V350e6_2E0 u) (V351e7_2E0 u) (V352e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V344l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V345e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V346e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V347e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V348e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V349e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V350e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V351e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V352e8_2E0)) _let_2)))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_3)) (= (exists ((V371l_27_2E0 u) (V372e1_2E0 u) (V373e2_2E0 u) (V374e3_2E0 u) (V375e4_2E0 u) (V376e5_2E0 u) (V377e6_2E0 u) (V378e7_2E0 u) (V379e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V371l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V372e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V373e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V374e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V375e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V376e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V377e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V378e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V379e8_2E0)) _let_2)))))))))))))))))))))) (_let_10 _let_18)) (= (= _let_3 _let_16) (exists ((V416e1_2E0 u) (V417e2_2E0 u) (V418e3_2E0 u) (V419e4_2E0 u) (V420e5_2E0 u) (V421e6_2E0 u) (V422e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V416e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V417e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V418e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V419e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V420e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V421e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V422e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))))))) (= (exists ((V423e1_2E0 u) (V424e2_2E0 u) (V425e3_2E0 u) (V426e4_2E0 u) (V427e5_2E0 u) (V428e6_2E0 u) (V429e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V423e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V424e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V425e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V426e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V427e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V428e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V429e7_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))) (= _let_16 _let_3)) (= (exists ((V446l_27_2E0 u) (V447e1_2E0 u) (V448e2_2E0 u) (V449e3_2E0 u) (V450e4_2E0 u) (V451e5_2E0 u) (V452e6_2E0 u) (V453e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V447e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V448e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V449e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V450e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V451e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V452e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V453e7_2E0)) (_let_1 V446l_27_2E0))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_3)) (= (exists ((V454l_27_2E0 u) (V455e1_2E0 u) (V456e2_2E0 u) (V457e3_2E0 u) (V458e4_2E0 u) (V459e5_2E0 u) (V460e6_2E0 u) (V461e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V455e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V456e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V457e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V458e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V459e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V460e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V461e7_2E0)) (_let_1 V454l_27_2E0))))))))))))))))))) (_let_10 _let_16)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_23) _let_3) (exists ((V462l_27_2E0 u) (V463e1_2E0 u) (V464e2_2E0 u) (V465e3_2E0 u) (V466e4_2E0 u) (V467e5_2E0 u) (V468e6_2E0 u) (V469e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V462l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V463e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V464e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V465e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V466e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V467e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V468e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V469e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V470l_27_2E0 u) (V471e1_2E0 u) (V472e2_2E0 u) (V473e3_2E0 u) (V474e4_2E0 u) (V475e5_2E0 u) (V476e6_2E0 u) (V477e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V470l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V471e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V472e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V473e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V474e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V475e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V476e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V477e7_2E0)) _let_2)))))))))))))))))))) (_let_10 _let_23)) (= (_let_10 _let_22) (exists ((V486l_27_2E0 u) (V487e1_2E0 u) (V488e2_2E0 u) (V489e3_2E0 u) (V490e4_2E0 u) (V491e5_2E0 u) (V492e6_2E0 u) (V493e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V486l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V487e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V488e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V489e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V490e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V491e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V492e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V493e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V518l_27_2E0 u) (V519e1_2E0 u) (V520e2_2E0 u) (V521e3_2E0 u) (V522e4_2E0 u) (V523e5_2E0 u) (V524e6_2E0 u) (V525e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V518l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V519e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V520e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V521e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V522e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V523e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V524e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V525e7_2E0)) _let_2)))))))))))))))))))) (= _let_22 _let_3)) (= (exists ((V532e1_2E0 u) (V533e2_2E0 u) (V534e3_2E0 u) (V535e4_2E0 u) (V536e5_2E0 u) (V537e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V532e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V533e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V534e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V535e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V536e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V537e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) (= _let_20 _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_24) _let_3) (exists ((V538l_27_2E0 u) (V539e1_2E0 u) (V540e2_2E0 u) (V541e3_2E0 u) (V542e4_2E0 u) (V543e5_2E0 u) (V544e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V539e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V540e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V541e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V542e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V543e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V544e6_2E0)) (_let_1 V538l_27_2E0)))))))))))))))))) (= (exists ((V559l_27_2E0 u) (V560e1_2E0 u) (V561e2_2E0 u) (V562e3_2E0 u) (V563e4_2E0 u) (V564e5_2E0 u) (V565e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V560e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V561e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V562e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V563e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V564e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V565e6_2E0)) (_let_1 V559l_27_2E0))))))))))))))))) (_let_10 _let_20)) (= (exists ((V566l_27_2E0 u) (V567e1_2E0 u) (V568e2_2E0 u) (V569e3_2E0 u) (V570e4_2E0 u) (V571e5_2E0 u) (V572e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V566l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V567e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V568e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V569e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V570e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V571e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V572e6_2E0)) _let_2)))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_25) _let_3)) (= (exists ((V594l_27_2E0 u) (V595e1_2E0 u) (V596e2_2E0 u) (V597e3_2E0 u) (V598e4_2E0 u) (V599e5_2E0 u) (V600e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V594l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V595e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V596e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V597e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V598e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V599e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V600e6_2E0)) _let_2)))))))))))))))))) (= _let_3 _let_25)) (= (= _let_25 _let_3) (exists ((V601l_27_2E0 u) (V602e1_2E0 u) (V603e2_2E0 u) (V604e3_2E0 u) (V605e4_2E0 u) (V606e5_2E0 u) (V607e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V601l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V602e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V603e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V604e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V605e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V606e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V607e6_2E0)) _let_2))))))))))))))))))) (= (exists ((V632l_27_2E0 u) (V633e1_2E0 u) (V634e2_2E0 u) (V635e3_2E0 u) (V636e4_2E0 u) (V637e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V633e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V634e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V635e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V636e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V637e5_2E0)) (_let_1 V632l_27_2E0))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_27) _let_3)) (= (exists ((V662l_27_2E0 u) (V663e1_2E0 u) (V664e2_2E0 u) (V665e3_2E0 u) (V666e4_2E0 u) (V667e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V662l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V663e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V664e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V665e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V666e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V667e5_2E0)) _let_2)))))))))))))))) (_let_10 _let_28)) (= (_let_10 _let_29) (exists ((V674l_27_2E0 u) (V675e1_2E0 u) (V676e2_2E0 u) (V677e3_2E0 u) (V678e4_2E0 u) (V679e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V674l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V675e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V676e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V677e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V678e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V679e5_2E0)) _let_2))))))))))))))))) (= (= _let_3 _let_29) (exists ((V692l_27_2E0 u) (V693e1_2E0 u) (V694e2_2E0 u) (V695e3_2E0 u) (V696e4_2E0 u) (V697e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V692l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V693e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V694e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V695e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V696e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V697e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_27) (exists ((V704e1_2E0 u) (V705e2_2E0 u) (V706e3_2E0 u) (V707e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V704e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V705e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V706e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V707e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_32) _let_3) (exists ((V712l_27_2E0 u) (V713e1_2E0 u) (V714e2_2E0 u) (V715e3_2E0 u) (V716e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V713e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V714e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V715e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V716e4_2E0)) (_let_1 V712l_27_2E0)))))))))))))) (= (_let_21 _let_32) (exists ((V717l_27_2E0 u) (V718e1_2E0 u) (V719e2_2E0 u) (V720e3_2E0 u) (V721e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V718e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V719e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V720e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V721e4_2E0)) (_let_1 V717l_27_2E0)))))))))))))) (= (exists ((V737l_27_2E0 u) (V738e1_2E0 u) (V739e2_2E0 u) (V740e3_2E0 u) (V741e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V737l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V738e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V739e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V740e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V741e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_30)) (= (= _let_3 _let_31) (exists ((V762l_27_2E0 u) (V763e1_2E0 u) (V764e2_2E0 u) (V765e3_2E0 u) (V766e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V762l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V763e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V764e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V765e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V766e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V767l_27_2E0 u) (V768e1_2E0 u) (V769e2_2E0 u) (V770e3_2E0 u) (V771e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V767l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V768e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V769e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V770e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V771e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_31 _let_3)) (= (exists ((V782l_27_2E0 u) (V783e1_2E0 u) (V784e2_2E0 u) (V785e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V783e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V784e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V785e3_2E0)) (_let_1 V782l_27_2E0))))))))))) (_let_21 _let_33)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_32) _let_3) (exists ((V786l_27_2E0 u) (V787e1_2E0 u) (V788e2_2E0 u) (V789e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V787e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V788e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V789e3_2E0)) (_let_1 V786l_27_2E0)))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_34) _let_3) (exists ((V794l_27_2E0 u) (V795e1_2E0 u) (V796e2_2E0 u) (V797e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V794l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V795e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V796e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V797e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (= _let_34 _let_3) (exists ((V814l_27_2E0 u) (V815e1_2E0 u) (V816e2_2E0 u) (V817e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V814l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V815e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V816e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V817e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (_let_21 _let_36) (exists ((V833l_27_2E0 u) (V834e1_2E0 u) (V835e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V834e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V835e2_2E0)) (_let_1 V833l_27_2E0)))))))))) (= (exists ((V836l_27_2E0 u) (V837e1_2E0 u) (V838e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V837e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V838e2_2E0)) (_let_1 V836l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_33) _let_3)) (= (_let_10 _let_33) (exists ((V839l_27_2E0 u) (V840e1_2E0 u) (V841e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V840e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V841e2_2E0)) (_let_1 V839l_27_2E0)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_41) _let_3) (exists ((V848l_27_2E0 u) (V849e1_2E0 u) (V850e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V848l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V849e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V850e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V851l_27_2E0 u) (V852e1_2E0 u) (V853e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V851l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V852e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V853e2_2E0)) _let_2)))))))))) (_let_10 _let_41)) (= (= _let_37 _let_3) (exists ((V857l_27_2E0 u) (V858e1_2E0 u) (V859e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V857l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V858e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V859e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V860l_27_2E0 u) (V861e1_2E0 u) (V862e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V860l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V861e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V862e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_41)) (= (exists ((V863l_27_2E0 u) (V864e1_2E0 u) (V865e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V863l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V864e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V865e2_2E0)) _let_2)))))))))) (= _let_41 _let_3)) (= (exists ((V874l_27_2E0 u) (V875e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V875e1_2E0)) (_let_1 V874l_27_2E0)))))) (_let_10 _let_36)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_39) _let_3) (exists ((V876l_27_2E0 u) (V877e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V876l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V877e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V878l_27_2E0 u) (V879e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V878l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V879e1_2E0)) _let_2))))))) (_let_10 _let_39)) (= (= _let_3 _let_39) (exists ((V884l_27_2E0 u) (V885e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V884l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V885e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_3 mono_2Ec_2Enum_2E0) _let_40) (= _let_40 (= mono_2Ec_2Enum_2E0 _let_3)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_36) _let_40) (= _let_40 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_3)) (= _let_40 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) mono_2Ec_2Enum_2E0)) (= _let_40 ((mono_2Ec_2Earithmetic_2E_3E _let_36) _let_3)) (= (= _let_38 _let_3) (exists ((V890l_27_2E0 u) (V891e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V890l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V891e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_3 _let_38) (exists ((V888l_27_2E0 u) (V889e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V888l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V889e1_2E0)) _let_2)))))))) (= (exists ((V886l_27_2E0 u) (V887e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V886l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V887e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))) (= _let_39 _let_3)) (= (_let_10 _let_38) (exists ((V882l_27_2E0 u) (V883e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V882l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V883e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V880l_27_2E0 u) (V881e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V880l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V881e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_38) _let_3)) (= (exists ((V872l_27_2E0 u) (V873e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V873e1_2E0)) (_let_1 V872l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_36) _let_3)) (= (exists ((V870l_27_2E0 u) (V871e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V871e1_2E0)) (_let_1 V870l_27_2E0)))))) (_let_21 mono_2Ec_2Enum_2E0)) (= (exists ((V868l_27_2E0 u) (V869e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V869e1_2E0)) (_let_1 V868l_27_2E0)))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_3)) (= (exists ((V867e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V867e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))) (= _let_36 _let_3)) (= (= _let_3 _let_36) (exists ((V866e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V866e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (exists ((V854l_27_2E0 u) (V855e1_2E0 u) (V856e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V854l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V855e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V856e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_3 _let_37)) (= (_let_10 _let_37) (exists ((V845l_27_2E0 u) (V846e1_2E0 u) (V847e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V845l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V846e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V847e2_2E0)) _let_2))))))))))) (= (exists ((V842l_27_2E0 u) (V843e1_2E0 u) (V844e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V842l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V843e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V844e2_2E0)) _let_2)))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_37) _let_3)) (= (exists ((V830l_27_2E0 u) (V831e1_2E0 u) (V832e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V831e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V832e2_2E0)) (_let_1 V830l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_36) _let_3)) (= (exists ((V828e1_2E0 u) (V829e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V828e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V829e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_33 _let_3)) (= (exists ((V826e1_2E0 u) (V827e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V826e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V827e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))) (= _let_3 _let_33)) (= (exists ((V822l_27_2E0 u) (V823e1_2E0 u) (V824e2_2E0 u) (V825e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V822l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V823e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V824e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V825e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_35 _let_3)) (= (= _let_3 _let_35) (exists ((V818l_27_2E0 u) (V819e1_2E0 u) (V820e2_2E0 u) (V821e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V818l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V819e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V820e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V821e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_34) (exists ((V810l_27_2E0 u) (V811e1_2E0 u) (V812e2_2E0 u) (V813e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V810l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V811e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V812e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V813e3_2E0)) _let_2))))))))))))) (= (exists ((V806l_27_2E0 u) (V807e1_2E0 u) (V808e2_2E0 u) (V809e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V806l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V807e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V808e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V809e3_2E0)) _let_2)))))))))))) (_let_10 _let_35)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_35) _let_3) (exists ((V802l_27_2E0 u) (V803e1_2E0 u) (V804e2_2E0 u) (V805e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V802l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V803e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V804e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V805e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V798l_27_2E0 u) (V799e1_2E0 u) (V800e2_2E0 u) (V801e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V798l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V799e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V800e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V801e3_2E0)) _let_2)))))))))))) (_let_10 _let_34)) (= (exists ((V790l_27_2E0 u) (V791e1_2E0 u) (V792e2_2E0 u) (V793e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V791e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V792e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V793e3_2E0)) (_let_1 V790l_27_2E0))))))))))) (_let_10 _let_32)) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_33) _let_3) (exists ((V778l_27_2E0 u) (V779e1_2E0 u) (V780e2_2E0 u) (V781e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V779e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V780e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V781e3_2E0)) (_let_1 V778l_27_2E0)))))))))))) (= (= _let_32 _let_3) (exists ((V775e1_2E0 u) (V776e2_2E0 u) (V777e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V775e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V776e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V777e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (= _let_3 _let_32) (exists ((V772e1_2E0 u) (V773e2_2E0 u) (V774e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V772e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V773e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V774e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))) (= (= _let_30 _let_3) (exists ((V757l_27_2E0 u) (V758e1_2E0 u) (V759e2_2E0 u) (V760e3_2E0 u) (V761e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V757l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V758e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V759e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V760e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V761e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_30) (exists ((V752l_27_2E0 u) (V753e1_2E0 u) (V754e2_2E0 u) (V755e3_2E0 u) (V756e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V752l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V753e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V754e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V755e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V756e4_2E0)) _let_2))))))))))))))) (= (exists ((V747l_27_2E0 u) (V748e1_2E0 u) (V749e2_2E0 u) (V750e3_2E0 u) (V751e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V747l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V748e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V749e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V750e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V751e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_31)) (= (exists ((V742l_27_2E0 u) (V743e1_2E0 u) (V744e2_2E0 u) (V745e3_2E0 u) (V746e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V742l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V743e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V744e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V745e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V746e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_31) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_30) _let_3) (exists ((V732l_27_2E0 u) (V733e1_2E0 u) (V734e2_2E0 u) (V735e3_2E0 u) (V736e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V732l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V733e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V734e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V735e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V736e4_2E0)) _let_2))))))))))))))) (= (_let_10 _let_27) (exists ((V727l_27_2E0 u) (V728e1_2E0 u) (V729e2_2E0 u) (V730e3_2E0 u) (V731e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V728e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V729e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V730e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V731e4_2E0)) (_let_1 V727l_27_2E0)))))))))))))) (= (exists ((V722l_27_2E0 u) (V723e1_2E0 u) (V724e2_2E0 u) (V725e3_2E0 u) (V726e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V723e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V724e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V725e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V726e4_2E0)) (_let_1 V722l_27_2E0))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_27) _let_3)) (= (exists ((V708e1_2E0 u) (V709e2_2E0 u) (V710e3_2E0 u) (V711e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V708e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V709e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V710e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V711e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_27 _let_3)) (= (exists ((V698l_27_2E0 u) (V699e1_2E0 u) (V700e2_2E0 u) (V701e3_2E0 u) (V702e4_2E0 u) (V703e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V698l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V699e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V700e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V701e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V702e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V703e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_29 _let_3)) (= (= _let_28 _let_3) (exists ((V686l_27_2E0 u) (V687e1_2E0 u) (V688e2_2E0 u) (V689e3_2E0 u) (V690e4_2E0 u) (V691e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V686l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V687e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V688e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V689e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V690e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V691e5_2E0)) _let_2))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_3 _let_28) (exists ((V680l_27_2E0 u) (V681e1_2E0 u) (V682e2_2E0 u) (V683e3_2E0 u) (V684e4_2E0 u) (V685e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V680l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V681e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V682e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V683e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V684e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V685e5_2E0)) _let_2))))))))))))))))) (= (exists ((V668l_27_2E0 u) (V669e1_2E0 u) (V670e2_2E0 u) (V671e3_2E0 u) (V672e4_2E0 u) (V673e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V668l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V669e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V670e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V671e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V672e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V673e5_2E0)) _let_2))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_29) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_28) _let_3) (exists ((V656l_27_2E0 u) (V657e1_2E0 u) (V658e2_2E0 u) (V659e3_2E0 u) (V660e4_2E0 u) (V661e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V656l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V657e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V658e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V659e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V660e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V661e5_2E0)) _let_2))))))))))))))))) (= (exists ((V650l_27_2E0 u) (V651e1_2E0 u) (V652e2_2E0 u) (V653e3_2E0 u) (V654e4_2E0 u) (V655e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V651e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V652e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V653e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V654e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V655e5_2E0)) (_let_1 V650l_27_2E0))))))))))))))) (_let_10 _let_24)) (= (exists ((V644l_27_2E0 u) (V645e1_2E0 u) (V646e2_2E0 u) (V647e3_2E0 u) (V648e4_2E0 u) (V649e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V645e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V646e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V647e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V648e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V649e5_2E0)) (_let_1 V644l_27_2E0))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_24) _let_3)) (= (_let_21 _let_27) (exists ((V638l_27_2E0 u) (V639e1_2E0 u) (V640e2_2E0 u) (V641e3_2E0 u) (V642e4_2E0 u) (V643e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V639e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V640e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V641e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V642e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V643e5_2E0)) (_let_1 V638l_27_2E0)))))))))))))))) (= (exists ((V627e1_2E0 u) (V628e2_2E0 u) (V629e3_2E0 u) (V630e4_2E0 u) (V631e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V627e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V628e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V629e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V630e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V631e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))) (= _let_24 _let_3)) (= (= _let_3 _let_24) (exists ((V622e1_2E0 u) (V623e2_2E0 u) (V624e3_2E0 u) (V625e4_2E0 u) (V626e5_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V622e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V623e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V624e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V625e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V626e5_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))))))))) (= (exists ((V615l_27_2E0 u) (V616e1_2E0 u) (V617e2_2E0 u) (V618e3_2E0 u) (V619e4_2E0 u) (V620e5_2E0 u) (V621e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V615l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V616e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V617e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V618e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V619e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V620e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V621e6_2E0)) _let_2)))))))))))))))))) (= _let_26 _let_3)) (= (= _let_3 _let_26) (exists ((V608l_27_2E0 u) (V609e1_2E0 u) (V610e2_2E0 u) (V611e3_2E0 u) (V612e4_2E0 u) (V613e5_2E0 u) (V614e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V608l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V609e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V610e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V611e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V612e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V613e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V614e6_2E0)) _let_2))))))))))))))))))) (= (_let_10 _let_26) (exists ((V587l_27_2E0 u) (V588e1_2E0 u) (V589e2_2E0 u) (V590e3_2E0 u) (V591e4_2E0 u) (V592e5_2E0 u) (V593e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V587l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V588e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V589e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V590e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V591e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V592e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V593e6_2E0)) _let_2))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V580l_27_2E0 u) (V581e1_2E0 u) (V582e2_2E0 u) (V583e3_2E0 u) (V584e4_2E0 u) (V585e5_2E0 u) (V586e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V580l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V581e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V582e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V583e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V584e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V585e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V586e6_2E0)) _let_2)))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_26) _let_3)) (= (exists ((V573l_27_2E0 u) (V574e1_2E0 u) (V575e2_2E0 u) (V576e3_2E0 u) (V577e4_2E0 u) (V578e5_2E0 u) (V579e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V573l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V574e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V575e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V576e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V577e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V578e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V579e6_2E0)) _let_2)))))))))))))))))) (_let_10 _let_25)) (= (exists ((V552l_27_2E0 u) (V553e1_2E0 u) (V554e2_2E0 u) (V555e3_2E0 u) (V556e4_2E0 u) (V557e5_2E0 u) (V558e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V553e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V554e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V555e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V556e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V557e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V558e6_2E0)) (_let_1 V552l_27_2E0))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_20) _let_3)) (= (_let_21 _let_24) (exists ((V545l_27_2E0 u) (V546e1_2E0 u) (V547e2_2E0 u) (V548e3_2E0 u) (V549e4_2E0 u) (V550e5_2E0 u) (V551e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V546e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V547e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V548e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V549e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V550e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V551e6_2E0)) (_let_1 V545l_27_2E0)))))))))))))))))) (= (exists ((V526e1_2E0 u) (V527e2_2E0 u) (V528e3_2E0 u) (V529e4_2E0 u) (V530e5_2E0 u) (V531e6_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V526e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V527e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V528e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V529e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V530e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V531e6_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))) (= _let_3 _let_20)) (= (= _let_3 _let_22) (exists ((V510l_27_2E0 u) (V511e1_2E0 u) (V512e2_2E0 u) (V513e3_2E0 u) (V514e4_2E0 u) (V515e5_2E0 u) (V516e6_2E0 u) (V517e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V510l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V511e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V512e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V513e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V514e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V515e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V516e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V517e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_23 _let_3) (exists ((V502l_27_2E0 u) (V503e1_2E0 u) (V504e2_2E0 u) (V505e3_2E0 u) (V506e4_2E0 u) (V507e5_2E0 u) (V508e6_2E0 u) (V509e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V502l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V503e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V504e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V505e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V506e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V507e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V508e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V509e7_2E0)) _let_2))))))))))))))))))))) (= (= _let_3 _let_23) (exists ((V494l_27_2E0 u) (V495e1_2E0 u) (V496e2_2E0 u) (V497e3_2E0 u) (V498e4_2E0 u) (V499e5_2E0 u) (V500e6_2E0 u) (V501e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V494l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V495e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V496e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V497e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V498e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V499e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V500e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V501e7_2E0)) _let_2))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_22) _let_3) (exists ((V478l_27_2E0 u) (V479e1_2E0 u) (V480e2_2E0 u) (V481e3_2E0 u) (V482e4_2E0 u) (V483e5_2E0 u) (V484e6_2E0 u) (V485e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V478l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V479e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V480e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V481e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V482e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V483e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V484e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V485e7_2E0)) _let_2))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (_let_21 _let_20) (exists ((V438l_27_2E0 u) (V439e1_2E0 u) (V440e2_2E0 u) (V441e3_2E0 u) (V442e4_2E0 u) (V443e5_2E0 u) (V444e6_2E0 u) (V445e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V439e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V440e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V441e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V442e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V443e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V444e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V445e7_2E0)) (_let_1 V438l_27_2E0)))))))))))))))))))) (= (exists ((V430l_27_2E0 u) (V431e1_2E0 u) (V432e2_2E0 u) (V433e3_2E0 u) (V434e4_2E0 u) (V435e5_2E0 u) (V436e6_2E0 u) (V437e7_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V431e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V432e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V433e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V434e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V435e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V436e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V437e7_2E0)) (_let_1 V430l_27_2E0))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_20) _let_3)) (= (= _let_18 _let_3) (exists ((V407l_27_2E0 u) (V408e1_2E0 u) (V409e2_2E0 u) (V410e3_2E0 u) (V411e4_2E0 u) (V412e5_2E0 u) (V413e6_2E0 u) (V414e7_2E0 u) (V415e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V407l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V408e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V409e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V410e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V411e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V412e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V413e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V414e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V415e8_2E0)) _let_2))))))))))))))))))))))) (= (= _let_3 _let_18) (exists ((V398l_27_2E0 u) (V399e1_2E0 u) (V400e2_2E0 u) (V401e3_2E0 u) (V402e4_2E0 u) (V403e5_2E0 u) (V404e6_2E0 u) (V405e7_2E0 u) (V406e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V398l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V399e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V400e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V401e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V402e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V403e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V404e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V405e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V406e8_2E0)) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_17 _let_3) (exists ((V389l_27_2E0 u) (V390e1_2E0 u) (V391e2_2E0 u) (V392e3_2E0 u) (V393e4_2E0 u) (V394e5_2E0 u) (V395e6_2E0 u) (V396e7_2E0 u) (V397e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V389l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V390e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V391e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V392e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V393e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V394e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V395e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V396e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V397e8_2E0)) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V380l_27_2E0 u) (V381e1_2E0 u) (V382e2_2E0 u) (V383e3_2E0 u) (V384e4_2E0 u) (V385e5_2E0 u) (V386e6_2E0 u) (V387e7_2E0 u) (V388e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V380l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V381e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V382e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V383e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V384e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V385e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V386e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V387e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V388e8_2E0)) _let_2)))))))))))))))))))))) (= _let_3 _let_17)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_18) _let_3) (exists ((V362l_27_2E0 u) (V363e1_2E0 u) (V364e2_2E0 u) (V365e3_2E0 u) (V366e4_2E0 u) (V367e5_2E0 u) (V368e6_2E0 u) (V369e7_2E0 u) (V370e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V362l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V363e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V364e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V365e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V366e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V367e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V368e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V369e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V370e8_2E0)) _let_2))))))))))))))))))))))) (= (exists ((V353l_27_2E0 u) (V354e1_2E0 u) (V355e2_2E0 u) (V356e3_2E0 u) (V357e4_2E0 u) (V358e5_2E0 u) (V359e6_2E0 u) (V360e7_2E0 u) (V361e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V353l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V354e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V355e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V356e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V357e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V358e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V359e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V360e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V361e8_2E0)) _let_2))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_10 _let_17)) (= (_let_10 _let_15) (exists ((V335l_27_2E0 u) (V336e1_2E0 u) (V337e2_2E0 u) (V338e3_2E0 u) (V339e4_2E0 u) (V340e5_2E0 u) (V341e6_2E0 u) (V342e7_2E0 u) (V343e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V336e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V337e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V338e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V339e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V340e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V341e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V342e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V343e8_2E0)) (_let_1 V335l_27_2E0)))))))))))))))))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_16) _let_3) (exists ((V308l_27_2E0 u) (V309e1_2E0 u) (V310e2_2E0 u) (V311e3_2E0 u) (V312e4_2E0 u) (V313e5_2E0 u) (V314e6_2E0 u) (V315e7_2E0 u) (V316e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V309e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V310e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V311e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V312e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V313e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V314e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V315e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V316e8_2E0)) (_let_1 V308l_27_2E0)))))))))))))))))))))) (= (exists ((V300e1_2E0 u) (V301e2_2E0 u) (V302e3_2E0 u) (V303e4_2E0 u) (V304e5_2E0 u) (V305e6_2E0 u) (V306e7_2E0 u) (V307e8_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V300e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V301e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V302e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V303e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V304e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V305e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V306e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V307e8_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))) (= _let_15 _let_3)) (= (exists ((V282l_27_2E0 u) (V283e1_2E0 u) (V284e2_2E0 u) (V285e3_2E0 u) (V286e4_2E0 u) (V287e5_2E0 u) (V288e6_2E0 u) (V289e7_2E0 u) (V290e8_2E0 u) (V291e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V282l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V283e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V284e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V285e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V286e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V287e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V288e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V289e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V290e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V291e9_2E0)) _let_2))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_13 _let_3)) (= (exists ((V272l_27_2E0 u) (V273e1_2E0 u) (V274e2_2E0 u) (V275e3_2E0 u) (V276e4_2E0 u) (V277e5_2E0 u) (V278e6_2E0 u) (V279e7_2E0 u) (V280e8_2E0 u) (V281e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V272l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V273e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V274e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V275e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V276e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V277e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V278e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V279e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V280e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V281e9_2E0)) _let_2)))))))))))))))))))))))) (= _let_3 _let_13)) (= (= _let_12 _let_3) (exists ((V262l_27_2E0 u) (V263e1_2E0 u) (V264e2_2E0 u) (V265e3_2E0 u) (V266e4_2E0 u) (V267e5_2E0 u) (V268e6_2E0 u) (V269e7_2E0 u) (V270e8_2E0 u) (V271e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V262l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V263e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V264e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V265e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V266e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V267e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V268e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V269e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V270e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V271e9_2E0)) _let_2))))))))))))))))))))))))) (= (= _let_3 _let_12) (exists ((V252l_27_2E0 u) (V253e1_2E0 u) (V254e2_2E0 u) (V255e3_2E0 u) (V256e4_2E0 u) (V257e5_2E0 u) (V258e6_2E0 u) (V259e7_2E0 u) (V260e8_2E0 u) (V261e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V252l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V253e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V254e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V255e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V256e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V257e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V258e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V259e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V260e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V261e9_2E0)) _let_2))))))))))))))))))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_3) (exists ((V232l_27_2E0 u) (V233e1_2E0 u) (V234e2_2E0 u) (V235e3_2E0 u) (V236e4_2E0 u) (V237e5_2E0 u) (V238e6_2E0 u) (V239e7_2E0 u) (V240e8_2E0 u) (V241e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V232l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V233e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V234e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V235e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V236e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V237e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V238e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V239e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V240e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V241e9_2E0)) _let_2))))))))))))))))))))))))) (= (_let_10 _let_12) (exists ((V222l_27_2E0 u) (V223e1_2E0 u) (V224e2_2E0 u) (V225e3_2E0 u) (V226e4_2E0 u) (V227e5_2E0 u) (V228e6_2E0 u) (V229e7_2E0 u) (V230e8_2E0 u) (V231e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V222l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V223e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V224e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V225e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V226e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V227e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V228e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V229e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V230e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V231e9_2E0)) _let_2))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V192l_27_2E0 u) (V193e1_2E0 u) (V194e2_2E0 u) (V195e3_2E0 u) (V196e4_2E0 u) (V197e5_2E0 u) (V198e6_2E0 u) (V199e7_2E0 u) (V200e8_2E0 u) (V201e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V193e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V194e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V195e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V196e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V197e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V198e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V199e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V200e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V201e9_2E0)) (_let_1 V192l_27_2E0))))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_7) _let_3)) (= (exists ((V154e1_2E0 u) (V155e2_2E0 u) (V156e3_2E0 u) (V157e4_2E0 u) (V158e5_2E0 u) (V159e6_2E0 u) (V160e7_2E0 u) (V161e8_2E0 u) (V162e9_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V154e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V155e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V156e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V157e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V158e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V159e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V160e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V161e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V162e9_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))) (= _let_3 _let_7)) (= (= _let_11 _let_3) (exists ((V121l_27_2E0 u) (V122e1_2E0 u) (V123e2_2E0 u) (V124e3_2E0 u) (V125e4_2E0 u) (V126e5_2E0 u) (V127e6_2E0 u) (V128e7_2E0 u) (V129e8_2E0 u) (V130e9_2E0 u) (V131e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V121l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V122e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V123e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V124e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V125e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V126e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V127e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V128e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V129e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V130e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V131e10_2E0)) _let_2))))))))))))))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V110l_27_2E0 u) (V111e1_2E0 u) (V112e2_2E0 u) (V113e3_2E0 u) (V114e4_2E0 u) (V115e5_2E0 u) (V116e6_2E0 u) (V117e7_2E0 u) (V118e8_2E0 u) (V119e9_2E0 u) (V120e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V110l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V111e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V112e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V113e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V114e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V115e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V116e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V117e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V118e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V119e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V120e10_2E0)) _let_2)))))))))))))))))))))))))) (= _let_3 _let_11)) (= (_let_10 _let_9) (exists ((V99l_27_2E0 u) (V100e1_2E0 u) (V101e2_2E0 u) (V102e3_2E0 u) (V103e4_2E0 u) (V104e5_2E0 u) (V105e6_2E0 u) (V106e7_2E0 u) (V107e8_2E0 u) (V108e9_2E0 u) (V109e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V99l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V100e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V101e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V102e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V103e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V104e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V105e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V106e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V107e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V108e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V109e10_2E0)) _let_2))))))))))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_3) (exists ((V44l_27_2E0 u) (V45e1_2E0 u) (V46e2_2E0 u) (V47e3_2E0 u) (V48e4_2E0 u) (V49e5_2E0 u) (V50e6_2E0 u) (V51e7_2E0 u) (V52e8_2E0 u) (V53e9_2E0 u) (V54e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V45e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V46e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V47e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V48e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V49e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V50e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V51e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V52e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V53e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V54e10_2E0)) (_let_1 V44l_27_2E0)))))))))))))))))))))))))) (= (exists ((V22l_27_2E0 u) (V23e1_2E0 u) (V24e2_2E0 u) (V25e3_2E0 u) (V26e4_2E0 u) (V27e5_2E0 u) (V28e6_2E0 u) (V29e7_2E0 u) (V30e8_2E0 u) (V31e9_2E0 u) (V32e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V24e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V25e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V30e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V31e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V32e10_2E0)) (_let_1 V22l_27_2E0))))))))))))))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_7) _let_3)) (= (= _let_6 _let_3) (exists ((V12e1_2E0 u) (V13e2_2E0 u) (V14e3_2E0 u) (V15e4_2E0 u) (V16e5_2E0 u) (V17e6_2E0 u) (V18e7_2E0 u) (V19e8_2E0 u) (V20e9_2E0 u) (V21e10_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V15e4_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e5_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e6_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e7_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e8_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V20e9_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e10_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((V0x1 mono_2Etyop_2Enum_2Enum) (V1y1 mono_2Etyop_2Enum_2Enum) (V2x2 mono_2Etyop_2Enum_2Enum) (V3y2 mono_2Etyop_2Enum_2Enum)) (=> (= ((mono_2Ec_2Eind__type_2ENUMPAIR V0x1) V1y1) ((mono_2Ec_2Eind__type_2ENUMPAIR V2x2) V3y2)) (= V0x1 V2x2))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0m))))) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3x_2E0)) _let_2)))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and (mono_2Ec_2Earithmetic_2EODD V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (mono_2Ec_2Earithmetic_2EODD ((mono_2Ec_2Earithmetic_2EEXP V0m) V1n)))) (forall ((V0p (-> Bool Bool))) ((mono_2Ec_2EDecode_2Ewf__decoder_2Emono_2Etyop_2Emin_2Ebool V0p) (mono_2Ec_2EDecode_2Edecode__bool V0p))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_1) c_2Epred__set_2EEMPTY_2E0))) (=> (forall ((V0e_2E0 u) (V2ps_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2ps_2E0))) (let ((_let_7 ((s A_27a) V0e_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_4))) (= (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F0_2E0)) _let_7))) _let_6)) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_3 _let_2)) (c_2Epred__set_2EINSERT_2E1 _let_7))) _let_6))) _let_6)))))))))))) (and (forall ((V0e_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27a) V0e_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) _let_5))) (= (_let_6 (c_2Epred__set_2EPOW_2E1 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_7) _let_4)))) (_let_6 ((c_2Ebool_2ELET_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) F0_2E0)) _let_7))) (_let_6 (c_2Epred__set_2EPOW_2E1 _let_4)))))))))))))) (= (_let_2 (c_2Epred__set_2EPOW_2E1 _let_3)) (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ebool_2EONE__ONE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_3 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_2)) (_let_3 (c_2Elist_2ELAST_2E1 _let_2))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (or ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Eprim__rec_2Emeasure_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_3 (c_2Eprim__rec_2Emeasure_2E1 ((s (_let_2 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V0p))) (=> (and (_let_1 V2m) (_let_1 V1n)) (= (= V1n V2m) (= ((mono_2Ec_2Earithmetic_2E_2D V1n) V0p) ((mono_2Ec_2Earithmetic_2E_2D V2m) V0p)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDL_2E0)) _let_8))) _let_5))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s ((tyop_2Emin_2Efun (_let_3 (_let_3 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_4) _let_4)) _let_4))))) (let ((_let_6 (_let_5 V0_2E0))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_6))) _let_6)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2A V1m) V0n)))) (and (= (_let_2 V1m) (and (_let_1 V1m) (= V0n mono_2Ec_2Enum_2E0))) (= (_let_2 V0n) (and (= V1m mono_2Ec_2Enum_2E0) (_let_1 V0n))))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (not ((mono_2Ec_2Estring_2Estring__lt V0s) V0s))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0m)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m2 mono_2Etyop_2Enum_2Enum) (V2m1 mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V2m1) V1m2) (= ((mono_2Ec_2Earithmetic_2EMOD V2m1) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1m2) V0n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) (or (_let_1 V1n) (_let_1 V0m))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (or (= V0m (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= V1n mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n) V1n))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Estate__transformer_2EMWHILE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Estate__transformer_2EMWHILE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= (= (_let_1 V1n) (_let_1 V2p)) (= V1n V2p)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V1m) V0n)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= (or (= V0n mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) _let_2)) (_let_1 V0n)) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_2) (= V1m mono_2Ec_2Enum_2E0)) (_let_1 V1m)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (= (or (= V0y mono_2Ec_2Enum_2E0) (_let_1 V1x)) (_let_1 ((mono_2Ec_2Earithmetic_2EEXP V1x) V0y))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_3 (s (_let_2 (_let_1 (_let_2 (_let_1 tyop_2Emin_2Ebool))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2Earithmetic_2EODD V0n)) (mono_2Ec_2Earithmetic_2EEVEN V0n))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Enum_2Enum))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_4) _let_4)) _let_4))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= V1n ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1y) (= (= ((mono_2Ec_2Earithmetic_2EMOD V0x) V1y) V0x) ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1y)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ellist_2ELPREFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ellist_2ELPREFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD V0k) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0)) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0b1_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebag_2EBAG__DISJOINT_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_5))) (_let_4 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Enum_2E0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) V0m) (= V1n mono_2Ec_2Enum_2E0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (and (= ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0n) _let_1) (= ((mono_2Ec_2Earithmetic_2EEXP V0n) _let_1) V0n)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_3 _let_2)) (_let_3 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))))) (forall ((V0c mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0c) V1b) (forall ((V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V2a))) (= ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V1b)) V0c) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1b) V0c))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27a d)) (and (forall ((V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_3) _let_2))) (= _let_3 _let_2))))))) (forall ((V3R_2E0 u) (V4n mono_2Etyop_2Enum_2Enum) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (exists ((V7z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V3R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V5x_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Earithmetic_2ENRC_2E4 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n))) _let_2) (_let_1 V6y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V3R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V4n)))) (_let_1 V5x_2E0)) (_let_1 V6y_2E0)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0c mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D V0c) V0c) mono_2Ec_2Enum_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2EMIN mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Earithmetic_2EMIN V0n) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (_let_4 V7g_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_1 V8x_2E0))) (let ((_let_8 (_let_4 V6f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_9 _let_10)) V3R2_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_3 _let_13)) V0R1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_14) _let_11) _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_7))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) (_let_6 ((c_2Ebool_2ELET_2E2 _let_8) _let_7))))) (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_2))))))))))))))))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1n) V2p)) ((mono_2Ec_2Earithmetic_2E_2A (_let_1 V1n)) V2p)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum V0))) (_let_3 (c_2Epair_2EUNCURRY_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (and (= ((mono_2Ec_2Earithmetic_2EDIV V0n) V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (= ((mono_2Ec_2Earithmetic_2EMOD V0n) V0n) mono_2Ec_2Enum_2E0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) ((mono_2Ec_2Earithmetic_2E_2B V1n) V0m))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_172 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Estring_2Echar)) (_let_172 c_2Erelation_2EWFREC_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s (_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 _let_2))))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0n) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD _let_1) V0n) _let_1))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= (and (not (V0b V2t)) (V1a V2t)) (((F0 V1a) V0b) V2t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F0 V1a) V0b)) V0b))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_1 V1x_2E0)) (_let_1 V2y_2E0))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27x d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s A_27x))) (= (_let_3 (c_2Ewot_2Emex_2E1 _let_2)) (_let_3 (c_2Epred__set_2ECHOICE_2E1 (_let_1 (c_2Epred__set_2ECOMPL_2E1 _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3a_2E0 u) (V4b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4b_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_1 V3a_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (= (= _let_5 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) V0R_2E0)) (_let_4 (_let_3 _let_5))))) (_let_4 (_let_3 _let_2))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGUNION_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGUNION_2E0)) _let_3)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27a)) F0_2E0)) _let_2) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2z) (= (= ((mono_2Ec_2Earithmetic_2EDIV V1y) V2z) V0x) (and ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V0x) V2z)) V1y) ((mono_2Ec_2Eprim__rec_2E_3C V1y) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V0x)) V2z)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (c_2Estate__transformer_2EMMAP_2E1 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0f_2E0))))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod _let_2) A_27a)))) (let ((_let_6 (tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))))) (let ((_let_7 (s (_let_6 _let_2)))) (= (_let_7 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_6 _let_3)) c_2Estate__transformer_2EJOIN_2E0))) (_let_7 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_2)) c_2Estate__transformer_2EJOIN_2E0)) ((s (_let_6 _let_5)) (c_2Estate__transformer_2EMMAP_2E1 _let_4))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EDIV2 V0n) ((mono_2Ec_2Earithmetic_2EDIV V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EUNIV_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) (_let_1 V0s_2E0))) _let_2)))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EUNIV_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 V1s_2E0)) _let_2)) _let_2)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (not ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m))) (and (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c))) (= (mono_2Ec_2Estring_2EEXPLODE (_let_1 V1s)) (_let_1 (mono_2Ec_2Estring_2EEXPLODE V1s))))) _let_170) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u) (V1P_27_2E0 u) (V2Q_2E0 u) (V3Q_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3Q_27_2E0))) (let ((_let_3 (_let_1 V2Q_2E0))) (let ((_let_4 (_let_1 V1P_27_2E0))) (let ((_let_5 (_let_1 V0P_2E0))) (=> (and (= _let_5 _let_3) (= _let_4 _let_2)) (=> (= _let_5 _let_4) (= _let_3 _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1n)) (_let_1 V2p)) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1b V4t)) ((F0 V1b) V4t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V1b) V0t0) (forall ((V3t1 mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0t0) V3t1) (mono_2Ec_2ETemporal__Logic_2EUPTO ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0t0) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V3t1) (F0 V1b)))) (V1b V3t1)) (V2a V3t1))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0zc_2E0 u) (V1v_2E0 u) (V2sc_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1v_2E0))) (let ((_let_3 (_let_1 V0zc_2E0))) (= (or (and (= _let_3 _let_2) (= V3n mono_2Ec_2Enum_2E0)) (exists ((V4x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2sc_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4x)))) (_let_1 V1v_2E0)) (= V3n (mono_2Ec_2Enum_2ESUC V4x)))))) (= (_let_1 (((c_2Earithmetic_2Enum__CASE_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) _let_3) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2sc_2E0))) _let_2)))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1p mono_2Etyop_2Enum_2Enum) (V2q mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2q) (= (exists ((V3k mono_2Etyop_2Enum_2Enum) (V4r mono_2Etyop_2Enum_2Enum)) (and (V0P V3k) ((mono_2Ec_2Eprim__rec_2E_3C V4r) V2q) (= V1p ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3k) V2q)) V4r)))) (V0P ((mono_2Ec_2Earithmetic_2EDIV V1p) V2q))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V2u_2E0))) (let ((_let_2 (c_2Ecardinal_2Ecardleq_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1))))))))) (forall ((A_27x d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (not ((mono_2Ec_2Earithmetic_2E_3E_3D V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 _let_2)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) (_let_1 V1t_2E0))))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0m))) (=> (and (not (= _let_1 V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)) ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2EFILTER_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2EFILTER_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V0m) ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)) ((mono_2Ec_2Earithmetic_2E_3E_3D ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V4x_2E0 u) (V1s_2E0 u) (V5y_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V2t_2E0))) (let ((_let_7 ((s A_27b) V5y_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V1s_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_12 (_let_2 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_9) _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_4 _let_13)) F1_2E0)) _let_1))) _let_10))) _let_7))) _let_6))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_1) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_7) ((s _let_3) ((app_2E2 _let_6) _let_1))))))))))))))))))))) (=> (forall ((V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V2t_2E0))) (let ((_let_5 ((s A_27b) V5y_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V1s_2E0))) (let ((_let_8 ((s A_27a) V4x_2E0))) (let ((_let_9 (tyop_2Emin_2Efun _let_3))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_6))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_1 A_27c))) (let ((_let_15 (_let_2 _let_14))) (let ((_let_16 ((s _let_15) V0f_2E0))) (let ((_let_17 ((tyop_2Epair_2Eprod A_27c) tyop_2Emin_2Ebool))) (let ((_let_18 (s _let_17))) (let ((_let_19 (_let_1 _let_17))) (let ((_let_20 (_let_2 _let_19))) (let ((_let_21 (_let_9 _let_20))) (let ((_let_22 (_let_12 _let_21))) (= (_let_18 ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s _let_21) ((app_2E2 ((s _let_22) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_15) _let_22)) F0_2E0)) _let_16))) _let_7))) _let_4))) _let_8))) _let_5)) (_let_18 ((c_2Epair_2E_2C_2E2 ((s A_27c) ((app_2E2 ((s _let_14) ((app_2E2 _let_16) _let_8))) _let_5))) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_2 _let_13)) F1_2E0)) _let_8))) _let_7))) _let_5))) _let_4)))))))))))))))))))))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V1s_2E0))) (let ((_let_6 (_let_2 (_let_1 A_27c)))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27c) tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 (_let_1 _let_7)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Epred__set_2EFINITE_2E1 _let_5))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V2t_2E0)) _let_1)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_7)) (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) ((s _let_6) V0f_2E0)))) _let_5))) ((s _let_3) V2t_2E0)))))))))))))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V1n) (_let_1 V0m)) (= (= (mono_2Ec_2Eprim__rec_2EPRE V0m) (mono_2Ec_2Eprim__rec_2EPRE V1n)) (= V0m V1n))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V2n_27 mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V2n_27) ((mono_2Ec_2Earithmetic_2E_2B V2n_27) V0n))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Erich__list_2ECOUNT__LIST ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)) ((mono_2Ec_2Elist_2EMAP_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V0n)) (mono_2Ec_2Erich__list_2ECOUNT__LIST V1m))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1r mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1r) V0n) (forall ((V2q mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V2q) V0n)) V1r)) V0n) V2q)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) (not ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0n)) V1m)))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3P_2E0 u)) (let ((_let_1 ((s A_27b) V0y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V3P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Erich__list_2EREPLICATE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Elist_2ELIST__REL_2E3 _let_4) ((s (tyop_2Elist_2Elist A_27a)) (_let_6 _let_2))) ((s (tyop_2Elist_2Elist A_27b)) (_let_6 _let_1))))) (=> ((mono_2Ec_2Earithmetic_2E_3E V2n) mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (or ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EEXP V1a) V0n)) ((mono_2Ec_2Earithmetic_2EEXP V2b) V0n)) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) ((mono_2Ec_2Eprim__rec_2E_3C V1a) V2b)))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rs1_2E0 u) (V2rs2_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3i)))) (let ((_let_3 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_4 (_let_3 V1rs1_2E0))) (let ((_let_5 (c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 ((s A_27a) V0v_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3i) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_4)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_3 V2rs2_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_4) _let_2)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0n)) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27b) V0h_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ellist_2ELFINITE_2E1 _let_2)))))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Ebool_2ET))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (=> (not (= _let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (= _let_2 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) (c_2Ebag_2EBAG__CHOICE_2E1 _let_2))) (_let_1 (c_2Ebag_2EBAG__REST_2E1 _let_2))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V1n)) V0m)) (not (= V0m V1n)))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1q (-> mono_2Etyop_2Enum_2Enum Bool)) (V2b (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EWATCH V1q) V2b))) (= (and (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V2b V0t0)) ((mono_2Ec_2ETemporal__Logic_2ENEXT (mono_2Ec_2ETemporal__Logic_2EALWAYS V1q)) V0t0)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0)) (not (V1q V0t0))) (_let_1 V0t0)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) V2p) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2A V1n) V2p)))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (= (_let_169 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_169 c_2Ebool_2ELET_2E0)) (forall ((A_27x d) (V0a_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s A_27x))) (let ((_let_2 (_let_1 V1b_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27x) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_1 V0a_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ewot_2Emex__less__eq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Ewot_2Epreds_2E1 _let_4))) (_let_3 (c_2Ewot_2Epreds_2E1 _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (_let_3 _let_2))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun (_let_3 (_let_3 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_4) _let_4)) _let_4))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum) (V3p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1a) V3p)) V0n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V2b) V3p)) V0n)) (= ((mono_2Ec_2Earithmetic_2EMOD V1a) V0n) ((mono_2Ec_2Earithmetic_2EMOD V2b) V0n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n) ((mono_2Ec_2Earithmetic_2E_2A V1n) V0m))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0m))) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p) (= V0m mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1n)) (_let_1 V2p))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2D V0m))) (= ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V1n)) V2p) (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Esorting_2EPERM_2E0)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum) (V3z mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V0n))) (let ((_let_2 (_let_1 V1x))) (=> (and (_let_2 V2y) ((_let_1 V2y) V3z)) (_let_2 V3z))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V2p))) (= ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V0m)) (_let_1 V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)))) (forall ((A_27a d) (V0x_2E0 u) (V1y Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Epred__set_2ESUBSET_2E2 (_let_2 V0x_2E0)))) (= (or V1y (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_2 (c_2Ecombin_2EK_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1y)))))))))))) (forall ((A_27a d) (V0v_27_2E0 u) (V1f_27_2E0 u) (V2M mono_2Etyop_2Enum_2Enum) (V3M_27 mono_2Etyop_2Enum_2Enum) (V4v_2E0 u) (V5f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V0v_27_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_2 V4v_2E0))) (=> (and (=> (= V3M_27 mono_2Ec_2Enum_2E0) (= _let_5 _let_3)) (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s A_27a))) (=> (= V3M_27 (mono_2Ec_2Enum_2ESUC V6n)) (= (_let_3 ((app_2E2 (_let_2 V5f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f_27_2E0)) _let_1)))))))) (= V2M V3M_27)) (= (_let_2 (((c_2Earithmetic_2Enum__CASE_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2M))) _let_5) (_let_1 V5f_2E0))) (_let_2 (((c_2Earithmetic_2Enum__CASE_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V3M_27))) _let_3) (_let_1 V1f_27_2E0))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (=> (forall ((V1G_2E0 u) (V2f_2E0 u) (V3seen_2E0 u) (V4h_2E0 u) (V5t_2E0 u) (V6acc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V6acc_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V5t_2E0))) (let ((_let_6 ((s A_27a) V4h_2E0))) (let ((_let_7 (c_2Elist_2ECONS_2E2 _let_6))) (let ((_let_8 (_let_4 V3seen_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 A_27b))) (let ((_let_11 (tyop_2Emin_2Efun A_27a))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 ((s _let_12) V2f_2E0))) (let ((_let_14 (_let_11 _let_3))) (let ((_let_15 ((s _let_14) V1G_2E0))) (let ((_let_16 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_17 (tyop_2Emin_2Efun _let_3))) (let ((_let_18 (_let_17 _let_16))) (let ((_let_19 (_let_17 _let_18))) (let ((_let_20 ((tyop_2Emin_2Efun _let_12) _let_19))) (let ((_let_21 (app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_14) _let_20)) V0P_2E0)) _let_15))) _let_13))))) (let ((_let_22 (s _let_18))) (let ((_let_23 (app_2E2 (_let_22 (_let_21 _let_8))))) (let ((_let_24 (s _let_16))) (let ((_let_25 (s tyop_2Emin_2Ebool))) (let ((_let_26 (s (_let_11 tyop_2Emin_2Ebool)))) (let ((_let_27 (j_mono_2Etyop_2Emin_2Ebool (_let_25 ((c_2Ebool_2EIN_2E2 _let_6) (_let_26 (c_2Elist_2ELIST__TO__SET_2E1 _let_8))))))) (let ((_let_28 (j_mono_2Etyop_2Emin_2Ebool (_let_25 (c_2Epred__set_2EFINITE_2E1 (_let_26 (c_2EdirGraph_2EParents_2E1 _let_15))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_25 ((app_2E2 (_let_24 (_let_23 (_let_4 c_2Elist_2ENIL_2E0)))) _let_2))) (=> (and (=> (and _let_27 _let_28) (j_mono_2Etyop_2Emin_2Ebool (_let_25 ((app_2E2 (_let_24 (_let_23 _let_5))) _let_2)))) (=> (and _let_28 (not _let_27)) (j_mono_2Etyop_2Emin_2Ebool (_let_25 ((app_2E2 (_let_24 ((app_2E2 (_let_22 (_let_21 (_let_4 (_let_7 _let_8))))) (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_5) (_let_4 ((app_2E2 _let_15) _let_6))))))) (_let_1 ((app_2E2 ((s _let_10) ((app_2E2 _let_13) _let_6))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_25 ((app_2E2 (_let_24 (_let_23 (_let_4 (_let_7 _let_5))))) _let_2)))))))))))))))))))))))))))))))))) (forall ((V7v_2E0 u) (V8v1_2E0 u) (V9v2_2E0 u) (V10v3_2E0 u) (V11v4_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 A_27b)))) (let ((_let_6 (_let_4 _let_1))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) V0P_2E0)) ((s _let_6) V7v_2E0)))) ((s _let_5) V8v1_2E0)))) (_let_2 V9v2_2E0)))) (_let_2 V10v3_2E0)))) ((s A_27b) V11v4_2E0)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2a) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1m) V0n)))) V0n)) ((mono_2Ec_2Earithmetic_2E_2A V2a) V1m)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EABS__DIFF V0x))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V2z)) ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V1y)) ((mono_2Ec_2Earithmetic_2EABS__DIFF V1y) V2z))))) (forall ((V0clist mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Estring_2EIMPLODE V0clist) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) V0clist))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3e mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V2n))) (=> ((_let_1 V1x) V0y) ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP V1x) V3e)) ((mono_2Ec_2Earithmetic_2EEXP V0y) V3e))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_5 ((c_2Erelation_2EWFREC_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s ((tyop_2Emin_2Efun _let_4) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V1n) V0m))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m))) (= (_let_168 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum)) (_let_168 c_2Epair_2EUNCURRY_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V1n mono_2Etyop_2Enum_2Enum)) ((V0P (mono_2Ec_2Enum_2ESUC V1n)) V1n)) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) ((V0P V2n) ((mono_2Ec_2Earithmetic_2E_2D V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (_let_1 V1l1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (or (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p) V1n)) (= V0m ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (and (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D mono_2Ec_2Enum_2E0) V0m) mono_2Ec_2Enum_2E0)) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V1m)) V2n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1m) V2n)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2D V1m) V2n)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0n)) (mono_2Ec_2Enum_2ESUC V1m)) ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2EtoList_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2EtoList_2E0)) _let_2)))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 ((c_2Ebag_2EBAG__INN_2E3 ((s A_27a) V3e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b2_2E0))))))))) (= (_let_1 V0b1_2E0) (_let_1 V1b2_2E0))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE V0m) ((mono_2Ec_2Earithmetic_2E_2D V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m) (forall ((V2p mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) ((mono_2Ec_2Earithmetic_2E_2B V1m) V2p))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1z mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EABS__DIFF V0x))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 (mono_2Ec_2Enum_2ESUC V1z))) (mono_2Ec_2Enum_2ESUC (_let_1 V1z))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Ebag_2EBAG__CARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Ebag_2EBAG__CARD_2E0)) _let_2)))))))) (forall ((A_27a d)) (and (forall ((V0e_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V0e_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)) _let_2)))) (forall ((V2e_2E0 u) (V3x_2E0 u) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2e_2E0))) (= (_let_1 (((c_2Elist_2ELUPDATE_2E3 _let_4) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V3x_2E0)) _let_2)))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_4) _let_2)))))))) (forall ((V9e_2E0 u) (V10n mono_2Etyop_2Enum_2Enum) (V11x_2E0 u) (V12l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V12l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 (c_2Elist_2ELUPDATE_2E3 (_let_4 V9e_2E0)))) (let ((_let_6 (c_2Elist_2ECONS_2E2 (_let_4 V11x_2E0)))) (= (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V10n))))) (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V10n))))) _let_2)))))))))))) (forall ((V5e_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7x_2E0 u) (V8l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (let ((_let_6 (c_2Elist_2ELUPDATE_2E3 (_let_5 V5e_2E0)))) (let ((_let_7 (c_2Elist_2ECONS_2E2 (_let_5 V7x_2E0)))) (= (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) (_let_1 (_let_7 _let_2)))) (_let_1 (_let_7 (_let_1 ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 Bool)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Ecombin_2EK_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ecombin_2EK_2E1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2E_2D V0m) mono_2Ec_2Enum_2E0) V0m) (= ((mono_2Ec_2Earithmetic_2E_2D mono_2Ec_2Enum_2E0) V0m) mono_2Ec_2Enum_2E0))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EEVEN (mono_2Ec_2Enum_2ESUC V0n)) (not (mono_2Ec_2Earithmetic_2EEVEN V0n)))) (= _let_167 mono_2Ec_2Ebool_2ET)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (= (_let_131 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2Etransitive_2Emono_2Etyop_2Enum_2Enum)) (_let_131 c_2Erelation_2Etransitive_2E0)) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMAX V1m) V0n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_3C_3D V2p))) (and (= (or (_let_2 V1m) (_let_2 V0n)) (_let_2 _let_1)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V2p) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V2p) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V2p))))))) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_1 V0l_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V2n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_3C_3D V1m))) (= (or (_let_2 V2n) (= V1m _let_1)) (_let_2 _let_1))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (= V0n mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) mono_2Ec_2Enum_2E0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_3) _let_2))) (= _let_3 _let_2))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) _let_4) (= (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n)))) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))) (not (= _let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_3) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Earithmetic_2EFUNPOW_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (c_2Elist_2ELLEX_2E1 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_3 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (V0h_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27e) A_27b)))) V0h_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b)))) (let ((_let_5 (tyop_2Emin_2Efun A_27e))) (let ((_let_6 ((s (_let_5 _let_4)) V1g_2E0))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_8 (c_2Estate__transformer_2EMCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_7)) V2f_2E0)))) (let ((_let_9 (s (_let_2 _let_7)))) (= (_let_9 (_let_8 ((s (_let_2 _let_4)) ((c_2Estate__transformer_2EMCOMP_2E2 _let_6) _let_3)))) (_let_9 ((c_2Estate__transformer_2EMCOMP_2E2 ((s (_let_5 _let_7)) (_let_8 _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0x2_2E0 u) (V1x1_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u) (V4R_2E0 u)) (let ((_let_1 ((s A_27b) V0x2_2E0))) (let ((_let_2 ((s A_27a) V1x1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V4R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_7 (_let_6 V2l2_2E0))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_9 (_let_8 V3l1_2E0))) (let ((_let_10 (c_2Elist_2ELIST__REL_2E3 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_10 (_let_8 ((c_2Elist_2EAPPEND_2E2 _let_9) (_let_8 ((c_2Elist_2ECONS_2E2 _let_2) (_let_8 c_2Elist_2ENIL_2E0)))))) (_let_6 ((c_2Elist_2EAPPEND_2E2 _let_7) (_let_6 ((c_2Elist_2ECONS_2E2 _let_1) (_let_6 c_2Elist_2ENIL_2E0)))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_10 _let_9) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1)))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0))))))))) (= (_let_1 V0s_2E0) (_let_1 V1t_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V1n) (_let_1 V2k)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV V0m) V1n)) V2k) ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2EMOD V0m) ((mono_2Ec_2Earithmetic_2E_2A V1n) V2k))) V1n))))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m) (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0m))) ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))) (forall ((A_27a d) (V0r_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0r_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2y_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_5 V1x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_8) _let_6))) (_let_2 (c_2Eset__relation_2Etc_2E1 _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_8) (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) (_let_4 (c_2Eset__relation_2Erange_2E1 _let_3)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (= ((mono_2Ec_2Earithmetic_2EEXP V0n) V1m) _let_1) (or (= V0n _let_1) (= V1m mono_2Ec_2Enum_2E0))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> (and (V0P V1m) (V0P V2n)) (and (V0P ((mono_2Ec_2Earithmetic_2EMAX V1m) V2n)) (V0P ((mono_2Ec_2Earithmetic_2EMIN V1m) V2n))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Ellist_2ELUNFOLD_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ellist_2ELUNFOLD_2E0)) _let_4))) _let_1))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (or (= V0m mono_2Ec_2Enum_2E0) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (= V0m (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) _let_2)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27c) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 V2b_2E0))) _let_2)))) (forall ((V3b1_2E0 u) (V4b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27d) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V4b2_2E0))) (let ((_let_3 (_let_1 V3b1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))))) (forall ((V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_2) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))) _let_2)))))) (= mono_2Ec_2Enumeral__bit_2EiBITWISE mono_2Ec_2Ebit_2EBITWISE) (= (_let_166 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_166 c_2Epair_2EFST_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 ((c_2Elist_2EEL_2E2 _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_5 ((c_2Erich__list_2EELL_2E2 _let_4) _let_2)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Edivides_2Edivides V0x) _let_1) (= V0x _let_1)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n))) V0m))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ellist_2ELHD_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Ellist_2ELHD_2E0)) _let_3))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (not (and ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 _let_1)) V3e2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 _let_1)) V2e1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_7 ((s (_let_2 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_8 ((s (_let_4 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 _let_8) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_6 tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__prod_2E2 _let_8) _let_7))) ((s (_let_6 _let_1)) ((c_2EEncode_2Eencode__prod_2E2 _let_5) _let_3)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMIN V0n) V0n) V0n)) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((V0l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM V0l) (((mono_2Ec_2Elist_2EFOLDR_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Earithmetic_2E_2B) mono_2Ec_2Enum_2E0) V0l))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0L1_2E0 u) (V1L2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 (_let_1 V0L1_2E0)) (_let_1 V1L2_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 ((s A_27a) V2x_2E0)))))) (= (_let_1 (_let_2 (_let_1 V0L1_2E0))) (_let_1 (_let_2 (_let_1 V1L2_2E0)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ESHORTLEX_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0)) (_let_1 V0l_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0m)) V1n)))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2D V0a))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V1b) V2c)) ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V1b)) V2c)))) (= (_let_166 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_166 c_2Epair_2ESND_2E0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enum_2ESUC V2p)) V1n) V0m)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)) (or (_let_1 mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (not (= ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V1n)) V0m) mono_2Ec_2Enum_2E0))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2z) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) ((mono_2Ec_2Earithmetic_2EDIV V1y) V2z)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V0x) V2z)) V1y)))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V1r_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Estrict__linear__order_2E2 (_let_4 ((c_2Eset__relation_2Errestrict_2E2 _let_5) _let_2))) (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> (or (= ((mono_2Ec_2Earithmetic_2EMOD V2p) V0n) mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Earithmetic_2EMOD V1m) V0n) mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2B V1m) V2p)) V0n) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EDIV V1m) V0n)) ((mono_2Ec_2Earithmetic_2EDIV V2p) V0n))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (s ((tyop_2Emin_2Efun (_let_3 _let_2)) (_let_3 tyop_2Enum_2Enum))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 _let_5))) _let_5))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (_let_3 (_let_3 (_let_3 (_let_3 _let_2)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 V0))) V0))))) (forall ((V0 (-> Bool (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ETIMES__2EXP V0n) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2ETIMES__2EXP V1n) (mono_2Ec_2Earithmetic_2ENUMERAL V2x)) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Enumeral__bit_2ESFUNPOW mono_2Ec_2Enumeral_2EiDUB) V1n) V2x))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0y) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EMOD V1x) V0y)) V1x))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Edivides_2Edivides V0a) V1b) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1b)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0a) V1b))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) (and (_let_1 V1n) (_let_1 V0m))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_7 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_7 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epred__set_2ESUM__IMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (= (_let_165 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Eprim__rec_2Emeasure_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (_let_165 c_2Eprim__rec_2Emeasure_2E0)) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((F0 V1m) V2n) (or (= V2n mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C V1m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0base_20_3C_202_20or_20n_20_3D_200 Bool) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Elogroot_2ELOG V1m))) (= (_let_1 V2n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((F0 V1m) V2n)) ((((mono_2Ec_2Ecombin_2EFAIL_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Emin_2Ebool mono_2Ec_2Elogroot_2ELOG) V0base_20_3C_202_20or_20n_20_3D_200) V1m) V2n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1m)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Enum_2ESUC (_let_1 ((mono_2Ec_2Earithmetic_2EDIV V2n) V1m)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0q mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1n) V0q))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V2m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2D V2m) _let_1)) V1n) ((mono_2Ec_2Earithmetic_2EMOD V2m) V1n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V0m))) (=> (and (_let_1 V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)) (_let_1 V2p)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V3R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) (_let_1 V1x_2E0)) (_let_1 V0y_2E0)))) (exists ((V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V3R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Earithmetic_2ENRC_2E4 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))) (_let_1 V1x_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V0y_2E0)))))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 (_let_1 V1s_2E0))) (let ((_let_4 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2)))) (let ((_let_5 ((s A_27a) V0x_2E0))) (let ((_let_6 (c_2Epred__set_2EINSERT_2E2 _let_5))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (_let_6 _let_3))) _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_5) _let_2))) (_let_1 (_let_6 _let_4))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) mono_2Ec_2Enum_2E0) V0m)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0n))) (= (mono_2Ec_2Earithmetic_2EBIT1 V0n) (_let_1 (_let_1 (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1b) V0a) (forall ((V2c mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2D V0a) V1b)) V2c) ((mono_2Ec_2Eprim__rec_2E_3C V0a) ((mono_2Ec_2Earithmetic_2E_2B V1b) V2c)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (or (= V0m ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V2p) mono_2Ec_2Enum_2E0))) (= ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n) V2p))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2Earithmetic_2E_3E_3D V0m) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) V2p)) ((mono_2Ec_2Earithmetic_2E_3E_3D ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Eirreflexive_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Eirreflexive_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1p2_2E0 u) (V4x2_2E0 u)) (let ((_let_1 ((s A_27b) V4x2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1p2_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V0p1_2E0 u) (V3x1_2E0 u)) (let ((_let_1 ((s A_27a) V3x1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0p1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0p1_2E0 u) (V1p2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1p2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0p1_2E0))) (let ((_let_7 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V2x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EEncode_2Elift__sum_2E3 _let_6) _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Esum_2Esum__CASE_2E3 _let_7) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F1_2E0)) _let_3)))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1g_2E0 u)) (= (and (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Enum_2Enum _let_1)))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s A_27a))) (= (_let_7 ((app_2E2 (_let_6 V1g_2E0)) _let_3)) (_let_7 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V0f_2E0)) (_let_2 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) _let_3))))))))))) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V4n)))))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s A_27a))) (= (_let_6 ((app_2E2 (_let_5 V1g_2E0)) _let_2)) (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0f_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V4n))))))) _let_2))))))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n))))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s A_27a))) (= (_let_6 ((app_2E2 (_let_5 V1g_2E0)) _let_2)) (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0f_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))) _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMAX V0m) V1n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)) V1n) V0m))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) ((mono_2Ec_2Earithmetic_2E_2B V0m) (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_9 (tyop_2Emin_2Efun _let_2))) (let ((_let_10 (_let_9 _let_8))) (= (_let_5 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_6) _let_4)) (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_9 _let_10)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_6))) _let_4)))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))) (not (= _let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0q mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EDIV V0q) (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)) V0q)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V0m)) (forall ((A_27a d) (V0z_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum) (V4R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (exists ((V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (c_2Earithmetic_2ENRC_2E4 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V4R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3m))) (_let_1 V1x_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_2) (_let_1 V0z_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V4R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V3m) V2n)))) (_let_1 V1x_2E0)) (_let_1 V0z_2E0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V0m))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0r) V1n) (= ((mono_2Ec_2Earithmetic_2EDIV V0r) V1n) mono_2Ec_2Enum_2E0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V1n))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2D V1n) V0m)) ((mono_2Ec_2Earithmetic_2E_2D V2p) V0m)) (or (_let_1 V0m) (_let_1 V2p))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2ECURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2ECURRY_2E0)) _let_3))))))))) (= _let_19 (mono_2Ec_2Enum_2ESUC _let_152)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0y1 mono_2Etyop_2Enum_2Enum) (V1y0 mono_2Etyop_2Enum_2Enum) (V2x1 mono_2Etyop_2Enum_2Enum) (V3x0 mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V4n))) (=> ((_let_1 V3x0) V2x1) (=> ((_let_1 V1y0) V0y1) ((_let_1 ((mono_2Ec_2Earithmetic_2E_2A V3x0) V1y0)) ((mono_2Ec_2Earithmetic_2E_2A V2x1) V0y1)))))) (forall ((V0t mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1c mono_2Etyop_2Estring_2Echar) (V2s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Estring_2EDEST__STRING V2s))) (and (= (= V2s ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V1c) V0t)) (= _let_1 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1c) V0t)))) (= (= V2s mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) (= _let_1 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= (mono_2Ec_2Enum_2ESUC (_let_1 V1n)) (_let_1 (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) (tyop_2Ellist_2Ellist A_27b))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP ((mono_2Ec_2Earithmetic_2E_2A V1x) V2y)) V0z) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EEXP V1x) V0z)) ((mono_2Ec_2Earithmetic_2EEXP V2y) V0z)))) (forall ((A_27a d) (V0P_2E0 u)) (=> (forall ((V1c_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (=> (and (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) (_let_3 V1c_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_3 V0P_2E0)) _let_2))))))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4y_2E0))) (let ((_let_4 (_let_2 V3x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1c_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_2 V0P_2E0)) ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 (_let_2 V1c_2E0)))))))))) (exists ((V5a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (and (forall ((V6x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6x_2E0))) (let ((_let_4 (_let_2 V5a_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))) (= _let_4 _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V5a_2E0))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EODD ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) (not (= (mono_2Ec_2Earithmetic_2EODD V0m) (mono_2Ec_2Earithmetic_2EODD V1n))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V2p))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2B (_let_1 V0m)) (_let_1 V1n))))) (forall ((A_27a d) (V0a0_2E0 u) (V1a1_2E0 u) (V2a0_27_2E0 u) (V3a1_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2a0_27_2E0))) (let ((_let_3 (_let_1 V0a0_2E0))) (let ((_let_4 (tyop_2EEncode_2Etree A_27a))) (let ((_let_5 (s (tyop_2Elist_2Elist _let_4)))) (let ((_let_6 (_let_5 V3a1_27_2E0))) (let ((_let_7 (_let_5 V1a1_2E0))) (let ((_let_8 (s _let_4))) (= (= (_let_8 ((c_2EEncode_2ENode_2E2 _let_3) _let_7)) (_let_8 ((c_2EEncode_2ENode_2E2 _let_2) _let_6))) (and (= _let_7 _let_6) (= _let_3 _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p) ((mono_2Ec_2Earithmetic_2E_3E V0m) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a))))) (let ((_let_2 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (= (_let_1 (c_2Ellist_2EtoList_2E1 _let_2)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_2))) (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eoption_2ETHE_2Emono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_2))))))) _let_2))) (_let_1 c_2Eoption_2ENONE_2E0))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC V0n) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (= (= (mono_2Ec_2Enum_2ESUC V0m) V1n) (= V0m (mono_2Ec_2Eprim__rec_2EPRE V1n))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1k_2E0 u) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0r_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1k_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (not (= _let_5 (_let_4 c_2Epred__set_2EEMPTY_2E0))) (forall ((V2C_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1k_2E0))) (let ((_let_4 (_let_2 V2C_2E0))) (let ((_let_5 (_let_2 ((c_2Epred__set_2EDIFF_2E2 (_let_2 ((c_2Eset__relation_2Eupper__bounds_2E2 _let_4) _let_1))) _let_4)))) (let ((_let_6 (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_5) _let_3)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (not (= _let_6 (_let_2 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Echain_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_5))) (_let_2 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_6) _let_1)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Eset__relation_2Echain_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F1_2E0)) _let_5))) _let_2)))))))))))) (=> (forall ((V0r_2E0 u) (V1k_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0r_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V1k_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_7 _let_8))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_5 _let_10)) F0_2E0)) _let_2))) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F1_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((V0r_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0r_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool)))) (let ((_let_6 (s (_let_4 tyop_2Emin_2Ebool)))) (= (_let_6 (c_2Eset__relation_2Efchains_2E1 _let_2)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (not (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_3 _let_2)) (_let_3 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not (= mono_2Ec_2Enum_2E0 (mono_2Ec_2Enum_2ESUC V0n)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMIN V1m) V0n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_3C_3D V2p))) (and (= (_let_2 _let_1) (and (_let_2 V0n) (_let_2 V1m))) (= (or ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V2p) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V2p)) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V2p)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27a) V5y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((s A_27c) V4x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_2 _let_6))) (let ((_let_9 ((tyop_2Emin_2Efun A_27c) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F1_2E0)) _let_4))) _let_5))) _let_1)) (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) ((s A_27b) ((app_2E2 _let_4) _let_1))))))))))))))) (=> (forall ((V0f_2E0 u) (V1g_2E0 u) (V3s_2E0 u)) (let ((_let_1 ((s A_27c) V3s_2E0))) (let ((_let_2 (tyop_2Epair_2Eprod A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1g_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 A_27b))) (let ((_let_10 ((s _let_9) V0f_2E0))) (let ((_let_11 (_let_2 A_27b))) (let ((_let_12 (_let_5 (_let_8 _let_11)))) (let ((_let_13 (tyop_2Emin_2Efun _let_9))) (let ((_let_14 (tyop_2Eoption_2Eoption _let_11))) (let ((_let_15 (s _let_14))) (let ((_let_16 (_let_5 _let_14))) (let ((_let_17 ((tyop_2Emin_2Efun _let_6) _let_16))) (= (_let_15 ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s (_let_13 _let_17)) F0_2E0)) _let_10))) _let_7))) _let_1)) (_let_15 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_11)) (c_2Epair_2EUNCURRY_2E1 ((s _let_12) ((app_2E2 ((s (_let_13 _let_12)) F1_2E0)) _let_10))))) ((s _let_4) ((app_2E2 _let_7) _let_1))))))))))))))))))))))) (forall ((V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s A_27c) V2s_2E0))) (let ((_let_2 (tyop_2Epair_2Eprod A_27c))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption (_let_2 A_27a))))) (let ((_let_5 ((s _let_4) V1g_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (_let_3 (tyop_2Eoption_2Eoption (_let_2 A_27b))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s (tyop_2Ellist_2Ellist A_27b)))) (= (_let_10 ((c_2Ellist_2ELMAP_2E2 _let_7) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELUNFOLD_2E2 _let_5) _let_1)))) (_let_10 ((c_2Ellist_2ELUNFOLD_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_5))) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0xb_2E0 u) (V1yb_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V2p_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1yb_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0xb_2E0))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 (((c_2EEncode_2Eencode__prod_2E3 _let_5) _let_3) _let_1))) ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_5) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1)))))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_4 ((app_2E2 _let_3) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B V2p) V1n) V0m)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (= (mono_2Ec_2Earithmetic_2ENUMERAL mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Enum_2E0) (forall ((A_27a d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (and (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))) (forall ((V3m mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3m) V4n) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3m))))))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n))))))))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELTAKE_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELTAKE_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eset__relation_2Eacyclic_2E1 _let_1))))))) (forall ((A_27a d) (V0P_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))))))) (= (_let_164 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_164 c_2Ebool_2ECOND_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Epred__set_2EPROD__IMAGE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epred__set_2EPROD__IMAGE_2E1 ((s (_let_1 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_1 (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMIN V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2EMIN V1n) V2p)) ((mono_2Ec_2Earithmetic_2EMIN (_let_1 V1n)) V2p)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ecombin_2Eo_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_2) (_let_1 V1t_2E0))))))))) (forall ((V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_2) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 V3t_2E0)) _let_2)))))))))) (= (_let_163 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_163 c_2Ebool_2ELET_2E0)) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0x) ((mono_2Ec_2Earithmetic_2EEXP V1b) V0x)) (or (= V0x mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1b)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1k) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD V1k) V0n) V1k))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar))) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (V0L_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0L_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)) (_let_1 ((c_2Elist_2EREV_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0f) (forall ((V1b mono_2Etyop_2Enum_2Enum)) (exists ((V2n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V1b) (V0f V2n)))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (forall ((V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2Enub_2E1 _let_2)))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (c_2Elist_2ECONS_2E2 _let_4))) (= (_let_1 (c_2Elist_2Enub_2E1 (_let_1 (_let_5 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) _let_3) (_let_1 (_let_5 _let_3))))))))))) (= (_let_1 (c_2Elist_2Enub_2E1 _let_2)) _let_2))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V2p)))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V0m)) (_let_1 V1n))))) (and (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EMOD__2EXP V1x) (mono_2Ec_2Earithmetic_2ENUMERAL V2n)) (mono_2Ec_2Earithmetic_2ENUMERAL ((mono_2Ec_2Enumeral__bit_2EiMOD__2EXP V1x) V2n)))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EMOD__2EXP V0x) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0))) (= (_let_162 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_162 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (_let_3 _let_2)) (_let_3 tyop_2Enum_2Enum)))))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 _let_5))) _let_5))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0t_2E0 u) (V1s_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0t_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_5 ((s (_let_3 A_27b)) V2f_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Epred__set_2EINJ_2E3 _let_5) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1p mono_2Etyop_2Enum_2Enum) (V2q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0n))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_2 V2q) (_let_2 V0n)) (= (_let_1 ((mono_2Ec_2Earithmetic_2EMOD V1p) V2q)) ((mono_2Ec_2Earithmetic_2EMOD (_let_1 V1p)) (_let_1 V2q))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Elist_2Elist _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1n_2E0 u) (V2m_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1n_2E0))) (let ((_let_3 (_let_1 V2m_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRP_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_4 _let_2) _let_3)) (_let_1 ((_let_4 _let_3) _let_2)))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 (_let_1 (c_2Epred__set_2EREST_2E1 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (not (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum)) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V1x))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0y) (= (= ((mono_2Ec_2Earithmetic_2EMOD _let_1) V0y) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2EMOD V1x) V0y))) (not (= _let_1 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2EDIV V1x) V0y))) V0y))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (exists ((V1n mono_2Etyop_2Enum_2Enum)) (= V0c (mono_2Ec_2Estring_2ECHR V1n)))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0b))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V2m)) (_let_1 V1n)) ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) V1n)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= V1n mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) V0m))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) A_27b)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s _let_1) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (s A_27b))) (= (_let_6 ((c_2EEncode_2Etree__CASE_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) c_2EEncode_2Etree__CASE_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (exists ((V2k mono_2Etyop_2Enum_2Enum)) (= V0m ((mono_2Ec_2Earithmetic_2E_2D V1n) V2k))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Erich__list_2ESPLITP_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_2 ((c_2Erich__list_2ESPLITP_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (and (mono_2Ec_2Earithmetic_2EEVEN V1m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n)) (mono_2Ec_2Earithmetic_2EEVEN ((mono_2Ec_2Earithmetic_2EEXP V1m) V0n)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D mono_2Ec_2Enum_2E0) V0n)) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V3d mono_2Etyop_2Enum_2Enum)) (and (=> (= V1a ((mono_2Ec_2Earithmetic_2E_2B V0b) V3d)) (V2P V3d)) (=> (= V0b ((mono_2Ec_2Earithmetic_2E_2B V1a) V3d)) (V2P mono_2Ec_2Enum_2E0)))) (V2P ((mono_2Ec_2Earithmetic_2E_2D V1a) V0b)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (and (= V1m mono_2Ec_2Enum_2E0) (= V0n mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2EMAX V1m) V0n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0f1_2E0 u) (V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 V4f0_2E0))) (let ((_let_5 (_let_3 V3f_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V2a0_2E0))) (let ((_let_8 ((s _let_2) V0f1_2E0))) (let ((_let_9 (c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 V1a_2E0)))) (let ((_let_10 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_10 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_8) (_let_10 (((_let_9 _let_7) _let_5) _let_4)))) (_let_10 (((_let_9 (_let_6 ((app_2E2 _let_8) _let_7))) _let_5) _let_4)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_3) _let_3)) _let_3)))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_5))) _let_5))))))) (forall ((V0P (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool))) (=> (and (forall ((V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V4i mono_2Etyop_2Enum_2Enum) (V5n mono_2Etyop_2Enum_2Enum)) (V0P ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V3s) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V4i) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V5n))))) (forall ((V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2i mono_2Etyop_2Enum_2Enum)) (V0P ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V1s) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2i) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum))))) (forall ((V6v mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V7v1 mono_2Etyop_2Enum_2Enum) (V8v2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V0P ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V6v) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V7v1) V8v2)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (s (_let_2 (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V2n))) (= ((_let_1 V1x) V0y) ((_let_1 V0y) V1x)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EMOD V0m) V1n)) V1n))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Ecombin_2EI_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ecombin_2EI_2E0)) _let_3))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V1))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_2 ((c_2Elist_2EisPREFIX_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (or (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2EPSUB__BAG_2E2 _let_3) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebag_2ESUB__BAG_2E2 _let_3) _let_2))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (or (= V0m V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0a) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1m) V2n))) mono_2Ec_2Enum_2E0) (= V0a mono_2Ec_2Enum_2E0))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B mono_2Ec_2Enum_2E0) V0n) V0n)) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enum_2ESUC V1m)) V2n) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2B V1m) V2n))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (or (= V0n mono_2Ec_2Enum_2E0) (= V1m mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2EMIN V1m) V0n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b2_2E0))) (let ((_let_3 (_let_1 V1b1_2E0))) (let ((_let_4 (c_2Ebag_2ESUB__BAG_2E2 (_let_1 ((c_2Ebag_2EBAG__INTER_2E2 _let_3) _let_2))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Enum_2E0)) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V1m)) V2n) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V1m) V2n)) V2n)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27b) V2y_2E0)) ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V0f_2E0)) _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V2y_2E0)) ((s _let_2) (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_2)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V1x) V0n)) V2r)) V0n) ((mono_2Ec_2Earithmetic_2E_2B V1x) ((mono_2Ec_2Earithmetic_2EDIV V2r) V0n)))))) (forall ((A_27a d) (A_27b d) (A_27state d) (X0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 A_27state)) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2))) ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (V0f V1n)) (V0f (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((V2b mono_2Etyop_2Enum_2Enum)) (exists ((V3n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V2b) (V0f V3n)))))) (forall ((A_27a d) (V0e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2ESING__BAG_2E1 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0e_2E0)) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V0m) V1n) (or ((mono_2Ec_2Earithmetic_2E_3E V0m) V1n) (= V0m V1n)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1r_2E0 u)) (= (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V0x_2E0)) ((s A_27b) V2y_2E0)))) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1r_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Edomain_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) V1r_2E0)))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0b))) (= ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V2m)) (_let_1 V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V2m) V1n)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1z mono_2Etyop_2Enum_2Enum) (V2y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EABS__DIFF V0x))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2B V2y))) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 (_let_2 V1z))) (_let_2 (_let_1 V1z)))))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (mono_2Ec_2Estring_2EIMPLODE (mono_2Ec_2Estring_2EEXPLODE V0s)) V0s)) (forall ((A_27a d) (V0a_2E0 u) (V1a0_2E0 u) (V2f_2E0 u) (V3f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_2 V2f_2E0))) (let ((_let_4 (s A_27a))) (= (_let_2 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_4 V0a_2E0)) (_let_4 V1a0_2E0)) _let_3) (_let_2 V3f0_2E0))))) _let_3)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u) (V1f_2E0 u) (V2G_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27a)) V1f_2E0))) (let ((_let_6 ((s (_let_4 tyop_2Emin_2Ebool)) V2G_2E0))) (let ((_let_7 ((c_2Ewhile_2EOWHILE_2E3 _let_6) _let_5))) (= (_let_3 (_let_7 _let_2)) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_6) _let_2))) (_let_3 (_let_7 (_let_1 ((app_2E2 _let_5) _let_2))))) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (_let_1 V1q))) (let ((_let_3 (_let_1 V0p))) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_2) ((mono_2Ec_2Eprim__rec_2E_3C _let_3) _let_2)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m) (= (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Eprim__rec_2EPRE V0m)) V0m))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1x) V0n)) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1x) V0n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2EFACT V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)) ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) (mono_2Ec_2Enum_2ESUC V0m))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2E_2A V0m))) (let ((_let_3 (_let_2 V1n))) (and (= ((mono_2Ec_2Earithmetic_2E_2A mono_2Ec_2Enum_2E0) V0m) mono_2Ec_2Enum_2E0) (= (_let_2 mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (= (_let_2 _let_1) V0m) (= ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V0m)) V1n) ((mono_2Ec_2Earithmetic_2E_2B _let_3) V1n)) (= (_let_2 (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Earithmetic_2E_2B V0m) _let_3)) (= ((mono_2Ec_2Earithmetic_2E_2A _let_1) V0m) V0m)))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (F0 V0x) (= V0x mono_2Ec_2Enum_2E0))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EEXP mono_2Ec_2Enum_2E0) V0x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V0x)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1m_2E0 u) (V2n_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1m_2E0))) (let ((_let_3 (_let_1 V3p_2E0))) (let ((_let_4 (_let_1 V2n_2E0))) (let ((_let_5 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (= (_let_1 ((_let_5 (_let_1 ((_let_5 _let_2) _let_4))) _let_3)) (_let_1 ((_let_5 (_let_1 ((_let_5 _let_4) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f0_2E0 u) (V1f1_2E0 u)) (exists ((V2fn_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) V2fn_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0))) (_let_1 V0f0_2E0)) (forall ((V3a0_2E0 u) (V4a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4a1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V2fn_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s A_27a) V3a0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_9 (_let_4 _let_8))) (= (_let_6 (_let_5 (_let_2 ((c_2Elist_2ECONS_2E2 _let_7) _let_3)))) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_9)) V1f1_2E0)) _let_7))) _let_3))) (_let_6 (_let_5 _let_3)))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC V0m) ((mono_2Ec_2Earithmetic_2E_2B V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum) (V3j mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V2i) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V3j)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2A V2i) V3j)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 (_let_3 _let_2)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Epair_2EUNCURRY_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2EUNCURRY_2E0)) _let_5))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (= (_let_159 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum)) (_let_159 c_2Erelation_2EWFREC_2E0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2f_27_2E0 u) (V3s_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V3s_27_2E0))) (let ((_let_4 (s (_let_1 A_27b)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_2 V1s_2E0))) (=> (and (= _let_6 _let_3) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V3s_27_2E0)))) (= (_let_4 ((app_2E2 (_let_3 V0f_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V2f_27_2E0)) _let_1)))))))))) (= (_let_5 ((c_2Epred__set_2EIMAGE_2E2 (_let_4 V0f_2E0)) _let_6)) (_let_5 ((c_2Epred__set_2EIMAGE_2E2 (_let_4 V2f_27_2E0)) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Elist_2Elist A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Elist_2EMAP2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Elist_2EMAP2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (or (= mono_2Ec_2Enum_2E0 V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0m))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD _let_1) V0n) _let_1)))) (forall ((A_27a d) (V0f_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V0f_2E0))) (let ((_let_5 (c_2Earithmetic_2EFUNPOW_2E3 _let_4))) (= (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) _let_2)) (_let_1 ((app_2E2 _let_4) (_let_1 ((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))))))))))) (= (_let_157 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebag_2EBAG__INSERT_2Emono_2Etyop_2Enum_2Enum)) (_let_157 c_2Ebag_2EBAG__INSERT_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0X_2E0 u) (V1Y_2E0 u) (V2Z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1Y_2E0))) (let ((_let_3 (_let_1 V2Z_2E0))) (let ((_let_4 (_let_1 V0X_2E0))) (=> (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_2)) _let_3) (= _let_4 (_let_1 ((c_2Ebag_2EBAG__DIFF_2E2 _let_3) _let_2))))))))) (= (_let_156 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool)) (_let_156 c_2Epred__set_2EINSERT_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V0n) (_let_1 V1q) ((mono_2Ec_2Earithmetic_2E_3C_3D V2r) V0n)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2A V1q) V0n)) V2r)) V0n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2D V0n) V2r)) V0n))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V4r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V4r_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_1))) (= (= (_let_7 ((app_2E2 _let_4) _let_5)) (_let_7 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0v_2E0 u) (V1rs1_2E0 u) (V2rs2_2E0 u) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 (s (tyop_2Elist_2Elist _let_3)))) (let ((_let_5 (_let_4 V2rs2_2E0))) (let ((_let_6 (_let_4 V1rs1_2E0))) (let ((_let_7 ((s A_27a) V0v_2E0))) (let ((_let_8 (c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_6))))) (let ((_let_11 (mono_2Ec_2Eprim__rec_2E_3C V3i))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (=> (not (_let_11 _let_10)) (= (or (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 ((s _let_12) ((app_2E2 ((s (_let_2 _let_12)) F0_2E0)) _let_7))) _let_6)))) (_let_11 ((mono_2Ec_2Earithmetic_2E_2B _let_10) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Elist_2ELENGTH_2E1 _let_5)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V3i) _let_10))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((_let_8 (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_5))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3i)))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0G_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) (_let_4 V0G_2E0)))) ((s _let_2) V1f_2E0)))) ((s A_27a) V2s_2E0)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0G_2E0)) (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 ((s (_let_2 A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_1 V2s_2E0))))))))))))))))) (=> (forall ((V0G_2E0 u) (V1f_2E0 u) (V2s_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2s_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V1f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0G_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_9 (_let_3 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_5))) _let_2))) V4n) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V4n))) _let_2)))))))))))))))))) (forall ((V0G_2E0 u) (V1f_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V2s_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V1f_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V0G_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_11 (_let_4 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_5))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (tyop_2Emin_2Efun _let_7))) (let ((_let_15 (_let_12 _let_7))) (= (_let_1 (((c_2Ewhile_2EOWHILE_2E3 _let_9) _let_6) _let_3)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_8 ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_14 _let_15)) F0_2E0)) _let_9))) _let_6))) _let_3))) (_let_1 (c_2Eoption_2ESOME_2E1 (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_6) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Ewhile_2ELEAST (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_14 _let_13)) F1_2E0)) _let_9))) _let_6))) _let_3))))))) _let_3))))) (_let_1 c_2Eoption_2ENONE_2E0))))))))))))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2z) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EDIV V1y) V2z)) V0x) ((mono_2Ec_2Eprim__rec_2E_3C V1y) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2B V0x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V2z))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (exists ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_1 V1x_2E0)) (_let_1 V2y_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= V0m ((mono_2Ec_2Earithmetic_2E_2B V1n) ((mono_2Ec_2Earithmetic_2E_2B V2p) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7))) (= (_let_3 (((c_2Elist_2ELUPDATE_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_8)) c_2Elist_2ELUPDATE_2E0)) _let_6))) _let_5))) _let_4)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (and (_let_1 V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)) (_let_1 V2p)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0)))) (= (_let_1 ((app_2E2 _let_4) ((s A_27a) (((c_2Epred__set_2ELINV_2E3 _let_4) ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0)) _let_2)))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 _let_6) _let_3) _let_2)) (_let_1 ((app_2E2 (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Earithmetic_2EFUNPOW_2E0)) _let_6))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V1f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_6) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7)))) (= (= _let_6 _let_2) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V1f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2D V1n) V0m)) ((mono_2Ec_2Earithmetic_2E_2D V2p) V0m)) (and ((mono_2Ec_2Eprim__rec_2E_3C V1n) V2p) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V2p)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (_let_1 ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_2 A_27b)) V0f_2E0)) ((s (_let_2 tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0))) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0m))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (not (= V1n _let_1))) ((mono_2Ec_2Eprim__rec_2E_3C _let_1) V1n)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (or (mono_2Ec_2Earithmetic_2EEVEN V0n) (mono_2Ec_2Earithmetic_2EODD V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (not (= V0n mono_2Ec_2Enum_2E0)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2))) ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) _let_2)) (_let_1 ((app_2E2 _let_3) _let_2))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (exists ((V2d mono_2Etyop_2Enum_2Enum)) (= V1k ((mono_2Ec_2Earithmetic_2E_2A V2d) V0n))) (= ((mono_2Ec_2Earithmetic_2EMOD V1k) V0n) mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1k mono_2Etyop_2Enum_2Enum) (V2r mono_2Etyop_2Enum_2Enum)) (=> (exists ((V3q mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V2r) V0n) (= V1k ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3q) V0n)) V2r)))) (= ((mono_2Ec_2Earithmetic_2EMOD V1k) V0n) V2r))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27d) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m2 mono_2Etyop_2Enum_2Enum) (V2m1 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V2m1) V1m2) (or (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD V2m1) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1m2) V0n))) (and (= V0n mono_2Ec_2Enum_2E0) (= V2m1 V1m2))))) (forall ((V0a mono_2Etyop_2Estring_2Echar) (V1b mono_2Etyop_2Estring_2Echar)) (= ((mono_2Ec_2Estring_2Echar__gt V0a) V1b) ((mono_2Ec_2Earithmetic_2E_3E (mono_2Ec_2Estring_2EORD V0a)) (mono_2Ec_2Estring_2EORD V1b)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (or (= V0m V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m) ((mono_2Ec_2Earithmetic_2EABS__DIFF V1m) V0n))) (forall ((A_27a d) (V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 c_2Ellist_2ELNIL_2E0))) (let ((_let_3 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V0h_2E0)) (_let_1 V1t_2E0))))) (and (not (= _let_2 _let_3)) (not (= _let_3 _let_2))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m1 mono_2Etyop_2Enum_2Enum) (V2m2 mono_2Etyop_2Enum_2Enum)) (= (exists ((V3a mono_2Etyop_2Enum_2Enum) (V4b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3a) V0n)) V1m1) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V4b) V0n)) V2m2))) (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V1m1) V2m2))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D V0m) ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)) V0m) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2row_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 (tyop_2Elist_2Elist _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1rows_2E0))) (let ((_let_6 ((s A_27b) V0v_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E2 _let_6))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_2) V2row_2E0))) (let ((_let_10 (s _let_1))) (=> (= (_let_10 ((app_2E2 _let_9) _let_6)) (_let_10 c_2Eoption_2ENONE_2E0)) (= (_let_8 (_let_7 (_let_4 ((c_2Elist_2ECONS_2E2 _let_9) _let_5)))) (_let_8 (_let_7 _let_5))))))))))))))) (and (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V2n) V3x)) V2n) ((mono_2Ec_2Earithmetic_2EMOD V3x) V2n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1x) V0n)) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1x) V0n))))) (forall ((A_27a d) (V0sob_2E0 u) (V1b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0sob_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_3)))) (let ((_let_6 (_let_4 V1b_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Epred__set_2EFINITE_2E1 _let_3))) (= (_let_4 (c_2Ebag_2EBIG__BAG__UNION_2E1 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_3) _let_6)))) (_let_4 (((c_2Ebool_2ECOND_2E3 (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) _let_3))) (_let_4 ((c_2Ebag_2EBAG__DIFF_2E2 _let_5) _let_6))) _let_5)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1n)) (_let_1 V2p)) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n)) V2p) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Emin_2E_40_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Emin_2E_40_2E0)) _let_4))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V1n)) V0m))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 A_27b)) tyop_2Emin_2Ebool)))) (= (_let_2 ((c_2Epred__set_2EFUNSET_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0))) (_let_2 c_2Epred__set_2EUNIV_2E0))))) (forall ((V0q mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1n) V0q))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V2m)) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2D V2m) _let_1)) V1n) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EDIV V2m) V1n)) V0q))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMAX V0m) V1n) ((mono_2Ec_2Earithmetic_2EMAX V1n) V0m))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2ECOMM_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)))) (forall ((V1e_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EMONOID_2E2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)) ((s A_27a) V1e_27_2E0)))) (forall ((V2e_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V3l_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s (_let_3 _let_4)) V0f_2E0))) (let ((_let_6 (c_2Elist_2EFOLDR_2E3 _let_5))) (let ((_let_7 (_let_2 V2e_2E0))) (= (_let_2 ((_let_6 _let_7) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_7))) (_let_2 ((_let_6 (_let_2 V1e_27_2E0)) _let_1))))))))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum) (V2z mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2z) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EDIV V1y) V2z)) V0x) ((mono_2Ec_2Eprim__rec_2E_3C V1y) ((mono_2Ec_2Earithmetic_2E_2A V0x) V2z))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p) (= (= V0m ((mono_2Ec_2Earithmetic_2E_2D V2p) V1n)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) V2p)))) (= (_let_155 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebag_2EBAG__UNION_2Emono_2Etyop_2Enum_2Enum)) (_let_155 c_2Ebag_2EBAG__UNION_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (and (= ((mono_2Ec_2Earithmetic_2EMAX V0n) mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMAX mono_2Ec_2Enum_2E0) V0n) V0n))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eset__relation_2ERREFL__EXP_2E0)) _let_6))) _let_3))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EODD V0n) (exists ((V1m mono_2Etyop_2Enum_2Enum)) (= V0n (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1m)))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (and (=> (mono_2Ec_2Earithmetic_2EODD V0n) (exists ((V2m mono_2Etyop_2Enum_2Enum)) (= V0n (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2m))))) (=> (mono_2Ec_2Earithmetic_2EEVEN V0n) (exists ((V1m mono_2Etyop_2Enum_2Enum)) (= V0n ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1m)))))) (= _let_152 _let_140) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0n))) (= (mono_2Ec_2Earithmetic_2EFACT _let_1) ((mono_2Ec_2Earithmetic_2E_2A _let_1) (mono_2Ec_2Earithmetic_2EFACT V0n))))) _let_153) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2EEVEN ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n)) (= (mono_2Ec_2Earithmetic_2EEVEN V0m) (mono_2Ec_2Earithmetic_2EEVEN V1n)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0z mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EABS__DIFF V1x) V0z)) ((mono_2Ec_2Earithmetic_2E_2B V1x) V0z))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m) mono_2Ec_2Enum_2E0) (= V0n V1m))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 Bool))) (=> (forall ((V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (= (F0 V0limopt) (= V0limopt (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (forall ((V0limopt mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29) (V1f_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_2 (c_2Ellist_2ELHD_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELGENLIST_2E2 _let_1) ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V0limopt)))))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool (F0 V0limopt)))) (_let_2 c_2Eoption_2ENONE_2E0)) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 _let_1) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) ((mono_2Ec_2Earithmetic_2E_2D V0m) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V1n) ((mono_2Ec_2Earithmetic_2EMOD V0m) V1n)))) (and (forall ((V0f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBIT__MODIFY mono_2Ec_2Enum_2E0) V0f) V1x) mono_2Ec_2Enum_2E0)) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V4x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2EBIT__MODIFY (mono_2Ec_2Enum_2ESUC V2n)) V3f) V4x) ((mono_2Ec_2Earithmetic_2E_2B (((mono_2Ec_2Ebit_2EBIT__MODIFY V2n) V3f) V4x)) ((mono_2Ec_2Ebit_2ESBIT ((V3f V2n) ((mono_2Ec_2Ebit_2EBIT V2n) V4x))) V2n))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (((mono_2Ec_2Earithmetic_2EMODEQ V1n) ((mono_2Ec_2Earithmetic_2EMOD V0x) V1n)) V0x))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (= (_let_151 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (_let_151 c_2Ebool_2ECOND_2E0)) (= (_let_149 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_149 c_2Ebool_2EONE__ONE_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0e_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2b_2E0 u)) (let ((_let_1 ((s A_27a) V0e_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V2b_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ebag_2EBAG__INN_2E3 _let_1) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2))) ((mono_2Ec_2Earithmetic_2E_3E_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 _let_2) _let_1)))) V1n)))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V1))))))))))) (forall ((V0n1 mono_2Etyop_2Enum_2Enum) (V1n2 mono_2Etyop_2Enum_2Enum) (V2m1 mono_2Etyop_2Enum_2Enum) (V3m2 mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EABS__DIFF ((mono_2Ec_2Earithmetic_2E_2B V0n1) V1n2)) ((mono_2Ec_2Earithmetic_2E_2B V2m1) V3m2))) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n1) V2m1)) ((mono_2Ec_2Earithmetic_2EABS__DIFF V1n2) V3m2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s (_let_3 ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_3 _let_2))) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2l mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V0b))) (= (_let_1 (((mono_2Ec_2Ebit_2ESLICE V1h) V2l) V3n)) (and (_let_1 V3n) ((mono_2Ec_2Earithmetic_2E_3C_3D V0b) V1h) ((mono_2Ec_2Earithmetic_2E_3C_3D V2l) V0b))))) (forall ((A_27a d)) (and (forall ((V2f_2E0 u) (V3n mono_2Etyop_2Enum_2Enum) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V2f_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (c_2Earithmetic_2EFUNPOW_2E3 _let_3))) (= (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n)))) _let_2)) (_let_1 ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V3n))) (_let_1 ((app_2E2 _let_3) _let_2))))))))))) (forall ((V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_1)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V1l_2E0))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_4))))) (let ((_let_6 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_1)))) (let ((_let_7 (mono_2Ec_2Earithmetic_2E_3E _let_5))) (let ((_let_8 ((mono_2Ec_2Earithmetic_2E_2B _let_2) V0x))) (let ((_let_9 (mono_2Ec_2Earithmetic_2E_3E_3D _let_5))) (let ((_let_10 (mono_2Ec_2Earithmetic_2E_2B V0x))) (let ((_let_11 (_let_10 _let_2))) (let ((_let_12 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_13 ((mono_2Ec_2Earithmetic_2E_2B _let_6) V0x))) (let ((_let_14 (_let_10 _let_6))) (let ((_let_15 (mono_2Ec_2Earithmetic_2ENUMERAL _let_1))) (let ((_let_16 ((mono_2Ec_2Earithmetic_2E_2B _let_12) V0x))) (let ((_let_17 (_let_10 _let_12))) (let ((_let_18 ((mono_2Ec_2Earithmetic_2E_2B _let_15) V0x))) (let ((_let_19 (_let_10 _let_15))) (let ((_let_20 (= _let_4 (_let_3 c_2Elist_2ENIL_2E0)))) (and (= (exists ((V20l_27_2E0 u) (V21e1_2E0 u) (V22e2_2E0 u) (V23e3_2E0 u) (V24e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V21e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V22e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V23e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V24e4_2E0)) (_let_1 V20l_27_2E0))))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) _let_5)) (= (_let_9 _let_2) (exists ((V25l_27_2E0 u) (V26e1_2E0 u) (V27e2_2E0 u) (V28e3_2E0 u) (V29e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V26e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V27e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V28e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V29e4_2E0)) (_let_1 V25l_27_2E0)))))))))))))) (= (exists ((V45l_27_2E0 u) (V46e1_2E0 u) (V47e2_2E0 u) (V48e3_2E0 u) (V49e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V45l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V46e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V47e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V48e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V49e4_2E0)) _let_2)))))))))))))) (_let_9 _let_11)) (= (exists ((V50l_27_2E0 u) (V51e1_2E0 u) (V52e2_2E0 u) (V53e3_2E0 u) (V54e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V50l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V51e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V52e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V53e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V54e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_8)) (= (exists ((V65l_27_2E0 u) (V66e1_2E0 u) (V67e2_2E0 u) (V68e3_2E0 u) (V69e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V65l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V66e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V67e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V68e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V69e4_2E0)) _let_2))))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_11 _let_5)) (= (exists ((V73e1_2E0 u) (V74e2_2E0 u) (V75e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V73e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V74e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V75e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_6 _let_5)) (= (exists ((V88l_27_2E0 u) (V89e1_2E0 u) (V90e2_2E0 u) (V91e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V89e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V90e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V91e3_2E0)) (_let_1 V88l_27_2E0))))))))))) (_let_9 _let_6)) (= (exists ((V92l_27_2E0 u) (V93e1_2E0 u) (V94e2_2E0 u) (V95e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V92l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V93e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V94e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V95e3_2E0)) _let_2)))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_13) _let_5)) (= (exists ((V100l_27_2E0 u) (V101e1_2E0 u) (V102e2_2E0 u) (V103e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V100l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V101e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V102e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V103e3_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_14) _let_5)) (= (_let_9 _let_14) (exists ((V104l_27_2E0 u) (V105e1_2E0 u) (V106e2_2E0 u) (V107e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V104l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V105e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V106e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V107e3_2E0)) _let_2))))))))))))) (= (exists ((V108l_27_2E0 u) (V109e1_2E0 u) (V110e2_2E0 u) (V111e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V108l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V109e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V110e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V111e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_13)) (= (exists ((V112l_27_2E0 u) (V113e1_2E0 u) (V114e2_2E0 u) (V115e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V112l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V113e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V114e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V115e3_2E0)) _let_2)))))))))))) (= _let_13 _let_5)) (= (exists ((V120l_27_2E0 u) (V121e1_2E0 u) (V122e2_2E0 u) (V123e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V120l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V121e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V122e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V123e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_14 _let_5)) (= (= _let_12 _let_5) (exists ((V126e1_2E0 u) (V127e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V126e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V127e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (exists ((V128l_27_2E0 u) (V129e1_2E0 u) (V130e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V129e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V130e2_2E0)) (_let_1 V128l_27_2E0))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_15) _let_5)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_16) _let_5) (exists ((V140l_27_2E0 u) (V141e1_2E0 u) (V142e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V140l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V141e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V142e2_2E0)) _let_2))))))))))) (= (= _let_5 _let_16) (exists ((V152l_27_2E0 u) (V153e1_2E0 u) (V154e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V152l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V153e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V154e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (exists ((V155l_27_2E0 u) (V156e1_2E0 u) (V157e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V155l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V156e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V157e2_2E0)) _let_2)))))))))) (= _let_16 _let_5)) (= (exists ((V158l_27_2E0 u) (V159e1_2E0 u) (V160e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V158l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V159e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V160e2_2E0)) _let_2)))))))))) (= _let_5 _let_17)) (= (= _let_17 _let_5) (exists ((V161l_27_2E0 u) (V162e1_2E0 u) (V163e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V161l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V162e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V163e2_2E0)) _let_2))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x))))))) (= (= _let_5 _let_15) (exists ((V164e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V164e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_5) (exists ((V166l_27_2E0 u) (V167e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V167e1_2E0)) (_let_1 V166l_27_2E0))))))) (= (exists ((V178l_27_2E0 u) (V179e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V178l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V179e1_2E0)) _let_2))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_19) _let_5)) (= (exists ((V180l_27_2E0 u) (V181e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V180l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V181e1_2E0)) _let_2))))))) (_let_9 _let_19)) (= (exists ((V184l_27_2E0 u) (V185e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V184l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V185e1_2E0)) _let_2))))))) (= _let_18 _let_5)) (= (exists ((V188l_27_2E0 u) (V189e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V188l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V189e1_2E0)) _let_2))))))) (= _let_19 _let_5)) (= _let_20 (= _let_5 mono_2Ec_2Enum_2E0)) (= _let_20 ((mono_2Ec_2Eprim__rec_2E_3C _let_5) _let_15)) (= _let_20 ((mono_2Ec_2Earithmetic_2E_3E _let_15) _let_5)) (= _let_20 ((mono_2Ec_2Earithmetic_2E_3C_3D _let_5) mono_2Ec_2Enum_2E0)) (= _let_20 ((mono_2Ec_2Earithmetic_2E_3E_3D mono_2Ec_2Enum_2E0) _let_5)) (= _let_20 (= mono_2Ec_2Enum_2E0 _let_5)) (= (= _let_5 _let_19) (exists ((V186l_27_2E0 u) (V187e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V186l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V187e1_2E0)) _let_2)))))))) (= (= _let_5 _let_18) (exists ((V182l_27_2E0 u) (V183e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V182l_27_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V183e1_2E0)) _let_2)))))))) (= (exists ((V176l_27_2E0 u) (V177e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V176l_27_2E0))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V177e1_2E0)) _let_2))))))) (_let_9 _let_18)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_18) _let_5) (exists ((V174l_27_2E0 u) (V175e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V174l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V175e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (= (exists ((V172l_27_2E0 u) (V173e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V173e1_2E0)) (_let_1 V172l_27_2E0)))))) (_let_9 _let_15)) (= (exists ((V170l_27_2E0 u) (V171e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V171e1_2E0)) (_let_1 V170l_27_2E0)))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_15) _let_5)) (= (_let_7 mono_2Ec_2Enum_2E0) (exists ((V168l_27_2E0 u) (V169e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V169e1_2E0)) (_let_1 V168l_27_2E0))))))) (= (= _let_15 _let_5) (exists ((V165e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V165e1_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))) (= (exists ((V149l_27_2E0 u) (V150e1_2E0 u) (V151e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V149l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V150e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V151e2_2E0)) _let_2))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_17)) (= (exists ((V146l_27_2E0 u) (V147e1_2E0 u) (V148e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V146l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V147e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V148e2_2E0)) _let_2)))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_17) _let_5)) (= (exists ((V143l_27_2E0 u) (V144e1_2E0 u) (V145e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V143l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V144e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V145e2_2E0)) _let_2)))))))))) (_let_9 _let_16)) (= (exists ((V137l_27_2E0 u) (V138e1_2E0 u) (V139e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V138e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V139e2_2E0)) (_let_1 V137l_27_2E0))))))))) (_let_9 _let_12)) (= (exists ((V134l_27_2E0 u) (V135e1_2E0 u) (V136e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V135e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V136e2_2E0)) (_let_1 V134l_27_2E0))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_12) _let_5)) (= (_let_7 _let_15) (exists ((V131l_27_2E0 u) (V132e1_2E0 u) (V133e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V132e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V133e2_2E0)) (_let_1 V131l_27_2E0)))))))))) (= (= _let_5 _let_12) (exists ((V124e1_2E0 u) (V125e2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V124e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V125e2_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))))))))) (= (exists ((V116l_27_2E0 u) (V117e1_2E0 u) (V118e2_2E0 u) (V119e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V116l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V117e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V118e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V119e3_2E0)) _let_2))))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= _let_5 _let_14)) (= (_let_9 _let_13) (exists ((V96l_27_2E0 u) (V97e1_2E0 u) (V98e2_2E0 u) (V99e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V96l_27_2E0))) (let ((_let_3 (s A_27a))) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V97e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V98e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V99e3_2E0)) _let_2))))))))))))) (= (exists ((V84l_27_2E0 u) (V85e1_2E0 u) (V86e2_2E0 u) (V87e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V85e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V86e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V87e3_2E0)) (_let_1 V84l_27_2E0))))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_6) _let_5)) (= (_let_7 _let_12) (exists ((V80l_27_2E0 u) (V81e1_2E0 u) (V82e2_2E0 u) (V83e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V81e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V82e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V83e3_2E0)) (_let_1 V80l_27_2E0)))))))))))) (= (exists ((V76l_27_2E0 u) (V77e1_2E0 u) (V78e2_2E0 u) (V79e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V77e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V78e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V79e3_2E0)) (_let_1 V76l_27_2E0))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_12) _let_5)) (= (exists ((V70e1_2E0 u) (V71e2_2E0 u) (V72e3_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V70e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V71e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V72e3_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))) (= _let_5 _let_6)) (= (= _let_5 _let_11) (exists ((V60l_27_2E0 u) (V61e1_2E0 u) (V62e2_2E0 u) (V63e3_2E0 u) (V64e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V60l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V61e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V62e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V63e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V64e4_2E0)) _let_2))))))))))))))) (= (exists ((V55l_27_2E0 u) (V56e1_2E0 u) (V57e2_2E0 u) (V58e3_2E0 u) (V59e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V55l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V56e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V57e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V58e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V59e4_2E0)) _let_2)))))))))))))) (= _let_8 _let_5)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_11) _let_5) (exists ((V40l_27_2E0 u) (V41e1_2E0 u) (V42e2_2E0 u) (V43e3_2E0 u) (V44e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V40l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V41e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V42e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V43e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V44e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))))) (= (exists ((V35l_27_2E0 u) (V36e1_2E0 u) (V37e2_2E0 u) (V38e3_2E0 u) (V39e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V35l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V36e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V37e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V38e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V39e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) (_let_9 _let_8)) (= (exists ((V30l_27_2E0 u) (V31e1_2E0 u) (V32e2_2E0 u) (V33e3_2E0 u) (V34e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V30l_27_2E0))) (let ((_let_3 (s A_27a))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V31e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V32e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V33e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V34e4_2E0)) _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_8) _let_5)) (= (_let_7 _let_6) (exists ((V15l_27_2E0 u) (V16e1_2E0 u) (V17e2_2E0 u) (V18e3_2E0 u) (V19e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V16e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V17e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V18e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V19e4_2E0)) (_let_1 V15l_27_2E0)))))))))))))) (= (exists ((V10l_27_2E0 u) (V11e1_2E0 u) (V12e2_2E0 u) (V13e3_2E0 u) (V14e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V11e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V12e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V13e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V14e4_2E0)) (_let_1 V10l_27_2E0))))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C _let_6) _let_5)) (= (exists ((V6e1_2E0 u) (V7e2_2E0 u) (V8e3_2E0 u) (V9e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V6e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V7e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V8e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V9e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_2 _let_5)) (= (exists ((V2e1_2E0 u) (V3e2_2E0 u) (V4e3_2E0 u) (V5e4_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s A_27a))) (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V2e1_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V3e2_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V4e3_2E0)) (_let_1 ((c_2Elist_2ECONS_2E2 (_let_2 V5e4_2E0)) (_let_1 c_2Elist_2ENIL_2E0))))))))))))) (= _let_5 _let_2)))))))))))))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1e_2E0))) (= (_let_1 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) A_27b))) V0f_2E0)) _let_2) ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) _let_2)))) (forall ((V2f_2E0 u) (V3e_2E0 u) (V4x_2E0 u) (V5l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V5l_2E0))) (let ((_let_3 ((s A_27a) V4x_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V3e_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) V2f_2E0))) (let ((_let_8 (c_2Elist_2EFOLDL_2E3 _let_7))) (= (_let_4 ((_let_8 _let_5) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) _let_2)))) (_let_4 ((_let_8 (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_5))) _let_3))) _let_2)))))))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1c mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V1c) V0b) (forall ((V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D V2a) ((mono_2Ec_2Earithmetic_2E_2D V0b) V1c)) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B V2a) V1c)) V0b))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP V1a) V0n)) ((mono_2Ec_2Earithmetic_2EEXP V2b) V0n)) (or ((mono_2Ec_2Earithmetic_2E_3C_3D V1a) V2b) (= V0n mono_2Ec_2Enum_2E0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (= ((mono_2Ec_2Earithmetic_2E_2A V0x) V1y) _let_1) (and (= V0x _let_1) (= V1y _let_1))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMIN V0m) V1n) ((mono_2Ec_2Earithmetic_2EMIN V1n) V0m))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (_let_3 tyop_2Enum_2Enum))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0m2 mono_2Etyop_2Enum_2Enum) (V1m1 mono_2Etyop_2Enum_2Enum)) (= (= V1m1 V0m2) (((mono_2Ec_2Earithmetic_2EMODEQ mono_2Ec_2Enum_2E0) V1m1) V0m2))) (= (_let_148 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_148 c_2Epair_2EUNCURRY_2E0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (= V0m V1n) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (=> (not (= _let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 (_let_1 (c_2Erich__list_2Ecommon__prefixes_2E1 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool) (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2A V1q) V0n)) V0n) V1q))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC V1m))))) ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V0n)) (_let_1 (mono_2Ec_2Enum_2ESUC V0n))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n) (= (V0P ((mono_2Ec_2Earithmetic_2EDIV V1m) V2n)) (forall ((V3q mono_2Etyop_2Enum_2Enum) (V4r mono_2Etyop_2Enum_2Enum)) (=> (and (= V1m ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3q) V2n)) V4r)) ((mono_2Ec_2Eprim__rec_2E_3C V4r) V2n)) (V0P V3q)))))) (= (_let_146 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Estring_2Echar)) (_let_146 c_2Elist_2EisPREFIX_2E0)) (forall ((A_27a d) (A_27b d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eset__relation_2Erange_2E1 _let_1)) (_let_3 (c_2Erelation_2ERRANGE_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Epred__set_2EGSPEC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_4 (_let_4 (_let_4 _let_2)))))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool) Bool))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) (tyop_2Elist_2Elist tyop_2Estring_2Echar))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1d mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1d)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EDIV V0n) V1d)) V0n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 (((tyop_2Einftree_2Einftree A_27a) A_27b) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Einftree_2Efrom__inftree_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Einftree_2Efrom__inftree_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0xs_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2f_2E0 u) (V3h_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s (tyop_2Elist_2Elist _let_1)))) (let ((_let_3 (_let_2 V0xs_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_5 ((s A_27a) V3h_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_8 (c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_7)) (c_2Eoption_2EOPTION__MAP_2E1 _let_6))))) (let ((_let_9 (s (tyop_2Elist_2Elist _let_7)))) (= (_let_9 (((c_2Elist_2ELUPDATE_2E3 ((s _let_7) (c_2Eoption_2ESOME_2E1 ((s A_27b) ((app_2E2 _let_6) _let_5))))) _let_4) (_let_9 (_let_8 _let_3)))) (_let_9 (_let_8 (_let_2 (((c_2Elist_2ELUPDATE_2E3 ((s _let_1) (c_2Eoption_2ESOME_2E1 _let_5))) _let_4) _let_3))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (((c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_4))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V1q)) V0p))) (= (= V2n V3m) (= ((mono_2Ec_2Earithmetic_2E_2A V2n) _let_1) ((mono_2Ec_2Earithmetic_2E_2A V3m) _let_1))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1x) _let_1)) V0n))) (=> (not (= _let_2 mono_2Ec_2Enum_2E0)) (= _let_2 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EMOD V1x) V0n)) _let_1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V2n)))) (= ((mono_2Ec_2Eprim__rec_2E_3C (_let_1 V0m)) (_let_1 V1i)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1i)))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V2n))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0p) V1q)) ((mono_2Ec_2Earithmetic_2E_2A (_let_1 V0p)) (_let_1 V1q))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (V0b_2E0 u) (V1c_2E0 u) (V2d_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2d_2E0))) (let ((_let_3 (_let_1 V1c_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__UNION_2E2 (_let_1 V0b_2E0)))) (=> (= (_let_1 (_let_4 _let_3)) (_let_1 (_let_4 _let_2))) (= _let_3 _let_2))))))) (forall ((A_27a d) (V0R_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3x_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Earithmetic_2ENRC_2E4 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1m) V2n)))) (_let_1 V3x_2E0)) (_let_1 V4z_2E0)))) (exists ((V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (c_2Earithmetic_2ENRC_2E4 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))) (_let_1 V3x_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((_let_5 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_2) (_let_1 V4z_2E0)))))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1s_2E0 u) (V2s_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_27_2E0))) (let ((_let_3 (c_2Eset__relation_2Efinite__prefixes_2E2 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) V0r_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2Earithmetic_2EEVEN V0n)) (mono_2Ec_2Earithmetic_2EODD V0n))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1c mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1c) (= (exists ((V2n mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) V1c) (V0P V2n))) (or (V0P ((mono_2Ec_2Earithmetic_2E_2D V1c) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (exists ((V3n mono_2Etyop_2Enum_2Enum)) (and (V0P V3n) ((mono_2Ec_2Eprim__rec_2E_3C V3n) ((mono_2Ec_2Earithmetic_2E_2D V1c) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0t2_2E0 u) (V1t1_2E0 u) (V2h2_2E0 u) (V3h1_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_2 (_let_1 V0t2_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (_let_3 V1t1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) V4f_2E0))) (let ((_let_7 (c_2Elist_2EMAP2_2E3 _let_6))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_9 ((s A_27c) V2h2_2E0))) (let ((_let_10 ((s A_27b) V3h1_2E0))) (= (_let_8 ((_let_7 (_let_3 ((c_2Elist_2ECONS_2E2 _let_10) _let_4))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_9) _let_2)))) (_let_8 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_10))) _let_9))) (_let_8 ((_let_7 _let_4) _let_2)))))))))))))))) (forall ((V5y_2E0 u) (V6f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 (((c_2Elist_2EMAP2_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))) V6f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) c_2Elist_2ENIL_2E0)) ((s (tyop_2Elist_2Elist A_27c)) V5y_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))) (forall ((V7v5_2E0 u) (V8v4_2E0 u) (V9f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_1 (((c_2Elist_2EMAP2_2E3 ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))) V9f_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27b) V8v4_2E0)) (_let_2 V7v5_2E0)))) ((s (tyop_2Elist_2Elist A_27c)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (exists ((V2m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) ((mono_2Ec_2Earithmetic_2EEXP V0b) V2m)))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMAX V0n) V0n) V0n)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s _let_2))) (= (_let_9 (((c_2EfixedPoint_2Efnsum_2E3 _let_6) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) c_2EfixedPoint_2Efnsum_2E0)) _let_6))) _let_5))) _let_1))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)) V0n)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ERTC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0p_2E0 u) (V1e_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V1e_2E0))) (let ((_let_5 (s _let_2))) (let ((_let_6 ((s (_let_3 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) _let_1)))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((c_2EDecode_2Edec2enc_2E2 ((s ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_2)))) ((c_2EDecode_2Eenc2dec_2E2 _let_6) _let_4))) _let_1))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_5 ((app_2E2 _let_4) _let_1))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT V0b) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1n)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Eprim__rec_2E_3C V0b) V1n))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V0n) V1m) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> (and (forall ((V3y mono_2Etyop_2Enum_2Enum)) (=> (V0P ((mono_2Ec_2Earithmetic_2E_2B V3y) V2n)) (V0P V3y))) (V0P V1x) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2n)) (V0P ((mono_2Ec_2Earithmetic_2EMOD V1x) V2n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V0n) V1x)) V0n) ((mono_2Ec_2Earithmetic_2EMOD V1x) V0n)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= ((mono_2Ec_2Enumeral_2Etexp__help V0n) V1a) ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2B V1a) _let_1)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2E_2B V0n) _let_1)))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun (_let_1 _let_2)))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 _let_2)) (_let_4 tyop_2Enum_2Enum)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V1)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (= (_let_145 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_145 c_2Epair_2E_2C_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0n))) (= (mono_2Ec_2Earithmetic_2EBIT2 V0n) (_let_1 (_let_1 (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_3) _let_3)))) (let ((_let_5 (_let_4 V0_2E0))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_5))) _let_5))))))) (forall ((V0y1 mono_2Etyop_2Enum_2Enum) (V1y0 mono_2Etyop_2Enum_2Enum) (V2x1 mono_2Etyop_2Enum_2Enum) (V3x0 mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V4n))) (=> ((_let_1 V3x0) V2x1) (=> ((_let_1 V1y0) V0y1) ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3x0) V1y0)) ((mono_2Ec_2Earithmetic_2E_2B V2x1) V0y1)))))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (= (and (forall ((V2n mono_2Etyop_2Enum_2Enum)) (=> (V0P V2n) (V0P (mono_2Ec_2Enum_2ESUC V2n)))) (V0P mono_2Ec_2Enum_2E0)) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (V0P V1n)))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (F0 V0m) (= V0m mono_2Ec_2Enum_2E0))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= V0m (mono_2Ec_2Enum_2ESUC V1n)) ((F1 V0m) V1n))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE V0m) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V0m)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Enum_2Enum (F1 V0m)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Edecode__list_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Edecode__list_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2EfixedPoint_2Emonotone_2E1 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0)))) (forall ((V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((app_2E2 _let_4) _let_3))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 (c_2EfixedPoint_2Elfp_2E1 _let_4))) _let_3))))))))))))) (= (_let_134 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Erelation_2ERTC_2Emono_2Etyop_2Enum_2Enum)) (_let_134 c_2Erelation_2ERTC_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_2))) (= (_let_6 (((c_2Eprim__rec_2EPRIM__REC_2E3 _let_7) _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_2) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) c_2Eprim__rec_2EPRIM__REC_2E0)) _let_7))) _let_5))) _let_1)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1min_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1min_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F1_2E0)) _let_3))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))))))) (=> (forall ((V0lo_2E0 u) (V1min_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1min_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0lo_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_4) A_27a))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (s _let_8))) (let ((_let_10 (tyop_2Emin_2Efun _let_1))) (let ((_let_11 (_let_10 _let_8))) (= (_let_9 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_11)) F0_2E0)) _let_6))) _let_3)) (_let_9 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_10 tyop_2Emin_2Ebool)) F1_2E0)) _let_3))) (_let_9 c_2Eoption_2ENONE_2E0)) (_let_9 (c_2Eoption_2ESOME_2E1 ((s _let_7) ((c_2Epair_2E_2C_2E2 (_let_5 ((c_2Eset__relation_2Errestrict_2E2 _let_6) (_let_2 ((c_2Epred__set_2EDIFF_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 (c_2Eset__relation_2Edomain_2E1 _let_6))) (_let_2 (c_2Eset__relation_2Erange_2E1 _let_6))))) _let_3))))) ((s A_27a) (c_2Epred__set_2ECHOICE_2E1 _let_3))))))))))))))))))))) (forall ((V0lo_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0lo_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_1) A_27a)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 (c_2Ellist_2Elinear__order__to__list__f_2E1 _let_2)) (_let_7 ((c_2Ebool_2ELET_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) F0_2E0)) _let_2))) (_let_4 ((c_2Eset__relation_2Eminimal__elements_2E2 (_let_4 ((c_2Epred__set_2EUNION_2E2 (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_4 (c_2Eset__relation_2Erange_2E1 _let_2))))) _let_2)))))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (= (_let_144 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_144 c_2Eoption_2Eoption__CASE_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 tyop_2Enum_2Enum)) (_let_2 (_let_2 tyop_2Emin_2Ebool)))))) (= (_let_3 c_2Eprim__rec_2Emeasure_2E0) (_let_3 (c_2Erelation_2Einv__image_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Eprim__rec_2E_3C))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27c))))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27c))))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27c)))) (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27c)))))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2EerrorStateMonad_2EMMAP_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_5))))))))))) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) _let_140) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (not (exists ((V1f_2E0 u)) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))))))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eprim__rec_2Ewellfounded_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EEncode_2Elift__tree_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EEncode_2Elift__tree_2E0)) _let_2)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 Bool)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= ((F0 V0x) V1y) (= V1y (mono_2Ec_2Enum_2ESUC V0x)))) (= mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Enum_2Enum F0)))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_4)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_4))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (= (_let_139 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Eone_2Eone)) (_let_139 c_2EDecode_2Edec2enc_2E0)) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((s A_27a) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (_let_1 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 _let_7) _let_4) _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X3))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Eprim__rec_2ESIMP__REC__REL_2E0)) _let_7))) _let_4))) _let_3))) X3))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (exists ((V3fun_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V3fun_2E0)) ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (V0e_2E0 u) (V1f_2E0 u)) (exists ((V2fn_2E0 u)) (let ((_let_1 (s A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2fn_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_1 V0e_2E0)) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V2fn_2E0)))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27a))) (= (_let_5 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n))))) (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V1f_2E0)) _let_2))) (_let_5 (_let_4 _let_2)))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2l_27 Bool) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) F0_2E0)) _let_4))) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V2l_27))))) _let_1))) (or V2l_27 (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Elist_2EEXISTS_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) _let_1)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (= (mono_2Ec_2Enum_2ESUC V0m) (mono_2Ec_2Enum_2ESUC V1n)) (= V0m V1n))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (not (= V0m V1n)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (V0j mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s (tyop_2Ewellorder_2Ewellorder ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))))) (= (= V1i V0j) (= (_let_2 (c_2Ewellorder_2EfromNatWO_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1i)))) (_let_2 (c_2Ewellorder_2EfromNatWO_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0j))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (or (= V0m V1n) (_let_1 V1n)) (_let_1 (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1r_27 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0r) _let_1) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1r_27) _let_1) (= (= V0r V1r_27) (= (mono_2Ec_2Estring_2ECHR V0r) (mono_2Ec_2Estring_2ECHR V1r_27))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 (_let_1 _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eprim__rec_2EPRIM__REC__FUN_2E2 _let_6) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) c_2Eprim__rec_2EPRIM__REC__FUN_2E0)) _let_6))) _let_5))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Eprim__rec_2E_3C V0n) V0n))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (_let_1 V1n) (_let_1 (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_1 V6y_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F1_2E0)) _let_5))) _let_2))) _let_6))) (= _let_6 (_let_1 ((app_2E2 _let_5) _let_2))))))))))))) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_1 V4y_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_2))) _let_6))) (= _let_6 (_let_1 ((app_2E2 _let_5) _let_2))))))))))))) (forall ((V0f_2E0 u) (V1m_2E0 u) (V2n_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2n_2E0))) (let ((_let_3 (_let_1 V1m_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_5) _let_7)))) (let ((_let_9 (s _let_7))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Erelation_2ERTC_2E3 (_let_9 ((app_2E2 (_let_8 F0_2E0)) _let_6))) (_let_1 ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Erelation_2ETC_2E3 (_let_9 ((app_2E2 (_let_8 F1_2E0)) _let_6))) _let_3) _let_2)))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u) (V2a_2E0 u)) (=> (and (forall ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))) (exists ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) (_let_1 V3x_2E0)))) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2a_2E0))))) (exists ((V5f_2E0 u)) (let ((_let_1 (s A_27a))) (and (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V5f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) (_let_1 V2a_2E0)) (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V5f_2E0)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V6n)))))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) V1R_2E0)) _let_4))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V6n)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 V0P_2E0)) _let_4)))))))))))))))))) (= mono_2Ec_2Enumposrep_2Enum__to__oct__list (mono_2Ec_2Enumposrep_2En2l _let_35)) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 ((c_2Erich__list_2EPREFIX_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((s _let_2) X0_2E0))) (let ((_let_7 (_let_1 _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eprim__rec_2ESIMP__REC_2E2 _let_6) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) c_2Eprim__rec_2ESIMP__REC_2E0)) _let_6))) _let_5))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0w_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V0w_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1s_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_9)) F0_2E0)) _let_2))) _let_8))) _let_5))) (and (forall ((V3y_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V3y_2E0))) (let ((_let_6 (_let_4 V2x_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_9 (c_2Ebool_2EIN_2E2 _let_5))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_8 (c_2Ewellorder_2EelsOf_2E1 _let_1))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_9 (_let_8 V1s_2E0))))) (not (= _let_6 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_6) _let_5))) (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))))))))))))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_4 (c_2Ewellorder_2EelsOf_2E1 _let_2))))))))))))))))) (forall ((V0w_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1s_2E0))) (let ((_let_4 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_5 ((s _let_4) V0w_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_7 ((c_2Ewellorder_2Ewleast_2E2 _let_5) _let_3)) (_let_7 (c_2Eoption_2Esome_2E1 (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_3))))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (F3_2E0 u) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V8n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F3_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V8n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V7n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V7n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5n)))) (_let_2 c_2Eind__type_2EBOTTOM_2E0))))) (=> (forall ((V1a0_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (= (forall ((V2_27bit1_27_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (=> (forall ((V3a0_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3a0_2E0))) (=> (or (exists ((V4a_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 V3a0_2E0) (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s A_27a) V4a_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F1_2E0))))))) (exists ((V6a_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 V3a0_2E0) (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0)))) ((s A_27a) V6a_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F2_2E0))))))) (= _let_3 (_let_2 (((c_2Eind__type_2ECONSTR_2E3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Enum_2ESUC mono_2Ec_2Enum_2E0))))) ((s A_27a) c_2Ebool_2EARB_2E0)) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) F3_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27bit1_27_2E0)) _let_3)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2_27bit1_27_2E0)) ((s _let_1) V1a0_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1a0_2E0))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Efcp_2Ebit1 A_27a)) _let_1)) V0rep_2E0))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enum_2ESUC V0h))) (= (((mono_2Ec_2Ebit_2EBITS V0h) mono_2Ec_2Enum_2E0) V1a) V1a))) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum mono_2Ec_2Eprim__rec_2E_3C) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (= (= V1y (mono_2Ec_2Enum_2ESUC V0x)) ((F0 V0x) V1y))) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum F0))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (= (_let_134 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Enum_2Enum)) (_let_134 c_2Erelation_2ETC_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ETC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (=> (forall ((V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3c_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V1a_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_1 V2b_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2)))))))))))))) (forall ((V4e_2E0 u) (V5P_2E0 u) (V6l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Elist_2EFILTER_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V5P_2E0)))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((c_2Elist_2EFOLDR_2E3 ((s (_let_3 (_let_3 A_27a))) V0f_2E0)) (_let_5 V4e_2E0)))) (= (_let_5 (_let_6 (_let_1 (_let_4 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))))) (_let_5 (_let_6 (_let_1 (_let_4 _let_2)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V1f_2E0 u) (V2fn1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) V2fn1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V0e_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_7))) (= (and (= (_let_5 ((app_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_6) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (app_2E2 (_let_4 V2fn1_2E0)))) (let ((_let_6 (s A_27a))) (= (_let_6 (_let_5 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3n))))) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1f_2E0)) (_let_6 (_let_5 _let_2))))) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_6))) ((s _let_4) V1f_2E0)))) _let_2))))))))))))) (forall ((V0e_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) F0_2E0)) ((s A_27a) V0e_2E0)))) ((s _let_3) V1f_2E0)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b)))))) (let ((_let_3 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (A_27s d) (V0f_2E0 u) (V1M1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 ((s (_let_1 A_27a)) V1M1_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_4 (s (_let_1 A_27b)))) (= (_let_4 ((c_2EreaderMonad_2EFMAP_2E2 _let_3) _let_2)) (_let_4 ((c_2Ecombin_2Eo_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Erelation_2ERTC_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_3 (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (mono_2Ec_2Enum_2ESUC V0n))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ellist_2Ellength__rel_2E2 _let_2) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2Ellength__rel_2E0)) _let_2))) X1)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3fun_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3fun_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_8 ((s _let_7) V1f_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F1_2E0)) _let_8))) _let_5))) _let_2)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 _let_8) (_let_6 ((app_2E2 _let_5) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V4n)))))))) _let_2))))))))))))) (=> (forall ((V0x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) _let_2))))) (forall ((V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_7 ((s A_27a) V0x_2E0))) (let ((_let_8 (s (_let_1 _let_2)))) (= (_let_8 ((c_2Eprim__rec_2EPRIM__REC__FUN_2E2 _let_7) _let_5)) (_let_8 ((c_2Eprim__rec_2ESIMP__REC_2E2 ((s _let_2) ((app_2E2 (_let_4 F0_2E0)) _let_7))) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F1_2E0)) _let_5))))))))))))))))) (and _let_133 (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE (mono_2Ec_2Enum_2ESUC V0m)) V0m))) (forall ((A_27a d) (V0bb_2E0 u)) (or (exists ((V2a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit0 A_27a)))) (= (_let_1 V0bb_2E0) (_let_1 (c_2Efcp_2EBIT0B_2E1 ((s A_27a) V2a_2E0)))))) (exists ((V1a_2E0 u)) (let ((_let_1 (s (tyop_2Efcp_2Ebit0 A_27a)))) (= (_let_1 V0bb_2E0) (_let_1 (c_2Efcp_2EBIT0A_2E1 ((s A_27a) V1a_2E0)))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eprim__rec_2Ewellfounded_2E1 _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (= _let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (not (= _let_1 mono_2Ec_2Enum_2E0))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum) (X3 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum X3)))) (let ((_let_3 (_let_1 (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (s A_27a))) (let ((_let_10 (_let_9 X0_2E0))) (let ((_let_11 (_let_4 _let_5))) (let ((_let_12 ((tyop_2Emin_2Efun _let_7) _let_11))) (= (_let_9 ((((c_2Eprim__rec_2EPRIM__REC__FUN_2E4 _let_10) _let_8) _let_3) _let_2)) (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_6 _let_12)) c_2Eprim__rec_2EPRIM__REC__FUN_2E0)) _let_10))) _let_8))) _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 A_27d)) V0g_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27d))) (let ((_let_5 (tyop_2Emin_2Efun (_let_3 A_27b)))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27d) A_27c)) V1f_2E0))) (let ((_let_7 (_let_3 A_27c))) (let ((_let_8 (s (_let_5 _let_7)))) (= (_let_8 (c_2EreaderMonad_2EFMAP_2E1 ((s (_let_1 A_27c)) ((c_2Ecombin_2Eo_2E2 _let_6) _let_2)))) (_let_8 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) (c_2EreaderMonad_2EFMAP_2E1 _let_6))) ((s (_let_5 _let_4)) (c_2EreaderMonad_2EFMAP_2E1 _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1p (-> mono_2Etyop_2Enum_2Enum Bool))) (=> ((mono_2Ec_2EEncode_2Ewf__pred__bnum V0m) V1p) ((mono_2Ec_2EEncode_2Ecollision__free V0m) V1p))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (= (_let_2 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3)))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (and (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1f_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((c_2Eprim__rec_2EPRIM__REC_2E3 (_let_5 V0x_2E0)) _let_4))) (= (_let_5 (_let_6 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2m))))) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) (_let_5 (_let_6 _let_2))))) _let_2)))))))))) (= (_let_1 (((c_2Eprim__rec_2EPRIM__REC_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (= (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V1x) _let_1)) V0n) mono_2Ec_2Enum_2E0) (= ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EMOD V1x) V0n)) _let_1) V0n)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (= (or (= V0m V1n) (_let_1 V1n)) (_let_1 (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_3 (((c_2Erelation_2ETC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (= (mono_2Ec_2Enum_2ESUC V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (= (_let_5 (((c_2Eprim__rec_2ESIMP__REC_2E3 _let_6) _let_4) _let_1)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) c_2Eprim__rec_2ESIMP__REC_2E0)) _let_6))) _let_4))) _let_1)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27a) A_27b)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (= (mono_2Ec_2Epred__set_2ECARD_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Emin_2Ebool) _let_19) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4x mono_2Etyop_2Enum_2Enum) (V5y mono_2Etyop_2Enum_2Enum)) (= ((F1 V4x) V5y) (= V5y (mono_2Ec_2Enum_2ESUC V4x)))) (=> (forall ((V2x mono_2Etyop_2Enum_2Enum) (V3y mono_2Etyop_2Enum_2Enum)) (= (= V3y (mono_2Ec_2Enum_2ESUC V2x)) ((F0 V2x) V3y))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Enum_2Enum F0) V0m) (mono_2Ec_2Enum_2ESUC V1n)) (((mono_2Ec_2Erelation_2ERTC_2Emono_2Etyop_2Enum_2Enum F1) V0m) V1n)))))) (forall ((V0i mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebit_2EBIT V0i) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0i)) V1n))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eprim__rec_2Emeasure_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eprim__rec_2Emeasure_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epred__set_2EGSPEC_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epred__set_2EGSPEC_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1e_2E0 u) (V2s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s2_2E0))) (let ((_let_3 ((s A_27a) V1e_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0f_2E0))) (let ((_let_4 (app_2E2 _let_3))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_1 V1x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eprim__rec_2Emeasure_2E3 _let_3) _let_6) _let_2))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_6)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (A_27e d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27e))) (let ((_let_3 ((tyop_2Emin_2Efun A_27d) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_1 A_27d)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_5 _let_2))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EreaderMonad_2EMCOMPOSE_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EreaderMonad_2EMCOMPOSE_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))))) (forall ((V3x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))))) (= (_let_1 (_let_4 (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V3x_2E0)) _let_2)))) (_let_1 (_let_4 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ERTC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_2) _let_1))))) (let ((_let_5 (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_2) _let_1))))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_2) _let_1))) _let_5) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_2) _let_1))) _let_5) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_2) _let_1))) _let_4) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_2) _let_1))) _let_4)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u) (V2g1_2E0 u) (V3g2_2E0 u) (V4m1 mono_2Etyop_2Enum_2Enum) (V5m2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 (_let_4 V2g1_2E0)) _let_3) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V4m1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 (_let_4 V3g2_2E0)) _let_3) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum V5m2)))))) (forall ((V6n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (mono_2Ec_2Eprim__rec_2E_3C V6n))) (=> (and (_let_4 V5m2) (_let_4 V4m1)) (= (_let_3 ((app_2E2 (_let_2 V2g1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V3g2_2E0)) _let_1)))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EDecode_2Edec2enc_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EDecode_2Edec2enc_2E0)) _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_3 (((c_2Elist_2Elist__CASE_2E3 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Elist_2EREVERSE_2E0)) _let_3))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardeq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) (_let_1 V0x_2E0)))) ((s _let_3) V1f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))) (_let_1 V3y_2E0)))) (exists ((V4g_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V4g_2E0))) (and (= (_let_2 V3y_2E0) (_let_2 ((app_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 _let_3) (_let_2 V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n))))))))))))))))))) (forall ((V0x_2E0 u) (V1f_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) ((s A_27a) V0x_2E0)))) ((s _let_2) V1f_2E0)))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (and (forall ((V3m mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4n)))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1f_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 ((c_2Eprim__rec_2EPRIM__REC__FUN_2E4 (_let_5 V0x_2E0)) _let_4))) (= (_let_5 ((_let_6 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V3m)))) _let_2)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) (_let_5 ((_let_6 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3m))) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V4n)))))))) _let_2)))))))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 ((((c_2Eprim__rec_2EPRIM__REC__FUN_2E4 _let_2) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) V1f_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n)))) _let_2))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (exists ((V2P (-> mono_2Etyop_2Enum_2Enum Bool))) (and (not (V2P V1n)) (V2P V0m) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> (V2P (mono_2Ec_2Enum_2ESUC V3n)) (V2P V3n))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 X0)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 tyop_2Enum_2Enum)) (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Erelation_2Einv__image_2E1 _let_3)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Erelation_2Einv__image_2E0)) _let_3)))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (_let_1 V0l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_2) _let_3)))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not (= (mono_2Ec_2Enum_2ESUC V0n) V0n))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (s (_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))))) (let ((_let_6 (_let_5 V2f_2E0))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_8 (c_2EindexedLists_2EMAPi_2E2 _let_6))) (= (_let_7 (_let_8 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_7 ((c_2Elist_2EAPPEND_2E2 (_let_7 (_let_8 _let_3))) (_let_7 ((c_2EindexedLists_2EMAPi_2E2 (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) ((s (_let_4 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_3))))))))) _let_2)))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0i_2E0 u) (V1P_2E0 u)) (= (= (forall ((V2v_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) V2v_2E0))))) (forall ((V3fv_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s A_27a) V3fv_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0i_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Ellist_2ELCONS_2E0)) _let_4))) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u) (V1f_27_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (exists ((V3g_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_27_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0x_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V3g_2E0))) (let ((_let_6 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2n)))) (and (= (_let_3 (((c_2Eprim__rec_2ESIMP__REC_2E3 _let_4) _let_2) _let_6)) (_let_3 ((app_2E2 _let_5) _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 _let_5) _let_4) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (_let_3 _let_4))) (= (_let_5 ((c_2Eset__relation_2Eper__restrict_2E2 _let_6) _let_2)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eset__relation_2Eper__restrict_2E0)) _let_6))) _let_2))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Efinite__image A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Efcp_2Edest__finite__image_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Efcp_2Edest__finite__image_2E0)) _let_2))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_1 V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))))))))))) (not (= (_let_1 ((c_2Elist_2EFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 V1l_2E0))) (_let_1 c_2Elist_2ENIL_2E0)))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u) (V0longer_20than_20list Bool) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 (i_mono_2Etyop_2Emin_2Ebool V0longer_20than_20list)))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_11 (s (_let_10 _let_9)))) (let ((_let_12 (_let_10 _let_1))) (let ((_let_13 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_12))) (let ((_let_14 (_let_8 _let_13))) (= (_let_2 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_10 _let_14)) F0_2E0)) _let_5))) _let_3))) _let_7))) (_let_4 (i_mono_2Etyop_2Enum_2Enum V3m)))) (_let_2 (((c_2Ebool_2ECOND_2E3 (_let_6 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V3m)))) (_let_2 ((c_2Elist_2ETAKE_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V3m) V1n)))) _let_3))) (_let_2 ((app_2E2 ((s _let_9) ((app_2E2 (_let_11 ((c_2Ecombin_2EFAIL_2E2 (_let_11 c_2Erich__list_2EBUTLASTN_2E0)) _let_7))) _let_5))) _let_3)))))))))))))))))))) (forall ((V0longer_20than_20list Bool) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_2 ((c_2Erich__list_2EBUTLASTN_2E2 _let_5) _let_3)) (_let_2 ((c_2Ebool_2ELET_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_6 _let_9)) F0_2E0)) _let_5))) _let_3))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0longer_20than_20list))))) (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun A_27d) A_27b)) A_27a))))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EerrorStateMonad_2EES__APPLY_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EerrorStateMonad_2EES__APPLY_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Enum_2Enum))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eprim__rec_2Emeasure_2E3 _let_6) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eprim__rec_2Emeasure_2E0)) _let_6))) _let_3))) _let_2)))))))))))))) _let_132 (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m)))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) V1f_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V0x_2E0))) (= (_let_4 (((c_2Eprim__rec_2EPRIM__REC_2E3 _let_5) _let_3) _let_2)) (_let_4 ((((c_2Eprim__rec_2EPRIM__REC__FUN_2E4 _let_5) _let_3) _let_2) (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE V2m)))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (_let_1 (mono_2Ec_2Enum_2ESUC V1n)) (=> (not (= V0m V1n)) (_let_1 V1n))))) (forall ((A_27a d) (A_27b d) (V0w_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27b)))) (let ((_let_2 (_let_1 V0w_2E0))) (= (= _let_2 (_let_1 c_2Ewellorder_2EwZERO_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) c_2Ewellorder_2EwZERO_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Efcp_2Ecart A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (_let_1 ((tyop_2Esum_2Esum A_27b) tyop_2Eone_2Eone)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Efcp_2EFCP__CONS_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_6)) c_2Efcp_2EFCP__CONS_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g2_2E0 u) (V1g1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u) (V4xs_2E0 u) (V5ys_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V4xs_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27c)))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27c)))) (let ((_let_4 (_let_3 ((c_2Elist_2EMAP_2E2 (_let_2 V2f2_2E0)) _let_1)))) (let ((_let_5 (_let_3 ((c_2Elist_2EMAP_2E2 (_let_2 V3f1_2E0)) _let_1)))) (let ((_let_6 ((s (tyop_2Elist_2Elist A_27b)) V5ys_2E0))) (let ((_let_7 (s ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_8 (_let_3 ((c_2Elist_2EMAP_2E2 (_let_7 V0g2_2E0)) _let_6)))) (let ((_let_9 (_let_3 ((c_2Elist_2EMAP_2E2 (_let_7 V1g1_2E0)) _let_6)))) (= (= (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_9)) (_let_3 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_8))) (and (= _let_9 _let_8) (= _let_5 _let_4))))))))))))) (= (_let_131 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum)) (_let_131 c_2Erelation_2EWF_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (F5_2E0 u) (F3_2E0 u) (F4_2E0 u) (F1_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V1P_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 ((s A_27a) V9y_2E0))) (let ((_let_2 ((s A_27c) V8x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1P_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F5_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (=> (forall ((V1P_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27c) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_3 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F3_2E0)) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_3F_21_2E1 ((s _let_2) ((app_2E2 (_let_5 ((app_2E2 ((s (_let_7 _let_4)) F5_2E0)) _let_6))) _let_1)))))))))))))))) (=> (forall ((V1P_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27a) V5y_2E0))) (let ((_let_2 ((s A_27c) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1P_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F4_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (=> (forall ((V1P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27c) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_3 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_7 _let_9)) F1_2E0)) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_3F_21_2E1 ((s _let_2) ((app_2E2 (_let_5 ((app_2E2 ((s (_let_7 _let_4)) F4_2E0)) _let_6))) _let_1)))))))))))))))) (=> (forall ((V1P_2E0 u) (V6y_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27a) V6y_2E0))) (let ((_let_2 ((s A_27c) V7x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V1P_2E0 u) (V2y_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V2y_2E0))) (let ((_let_2 ((s A_27c) V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F0_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (forall ((V0i_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V1P_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_2) _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0i_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (and (=> (forall ((V6y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F2_2E0)) ((s _let_3) V1P_2E0)))) ((s A_27a) V6y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F3_2E0)) _let_3)))))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V0i_2E0)) ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) ((s _let_3) V1P_2E0)))) ((s A_27a) V2y_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_7) (_let_6 ((app_2E2 (_let_5 F1_2E0)) _let_3))))))))))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (=> (_let_1 (mono_2Ec_2Enum_2ESUC V1n)) (or (_let_1 V1n) (= V0m V1n))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_3))) _let_3))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (= (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not ((mono_2Ec_2Eprim__rec_2E_3C V0n) mono_2Ec_2Enum_2E0))) (= (_let_128 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_128 c_2Elist_2Elist__CASE_2E0)) (forall ((A_27a d) (A_27b d) (V0l_2E0 u) (V1l_27_2E0 u) (V2b_2E0 u) (V3b_27_2E0 u) (V4f_2E0 u) (V5f_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_27_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V3b_27_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))))) (let ((_let_6 (_let_1 V0l_2E0))) (let ((_let_7 (_let_3 V2b_2E0))) (=> (and (forall ((V6x_2E0 u) (V7a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V7a_2E0))) (let ((_let_3 ((s A_27a) V6x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (s (_let_5 _let_4)))) (let ((_let_7 (s _let_4))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_3) ((s (_let_5 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_27_2E0)))))) (= (_let_1 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V4f_2E0)) _let_3))) _let_2)) (_let_1 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5f_27_2E0)) _let_3))) _let_2)))))))))))) (= _let_7 _let_4) (= _let_6 _let_2)) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 (_let_5 V4f_2E0)) _let_7) _let_6)) (_let_3 (((c_2Elist_2EFOLDR_2E3 (_let_5 V5f_27_2E0)) _let_4) _let_2)))))))))))) (= (_let_125 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (_let_125 c_2Epred__set_2EEMPTY_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Erelation_2ETC_2Emono_2Etyop_2Enum_2Enum V0))) (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (A_27b d) (V0y0_2E0 u) (V1y_2E0 u) (V2x_2E0 u) (V3w2_2E0 u) (V4w1_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V3w2_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V1y_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_8 ((s A_27a) V2x_2E0))) (let ((_let_9 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V4w1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_8) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_9))))) (= (_let_7 (((c_2Ewellorder_2Ewo2wo_2E3 _let_9) _let_1) _let_8)) (_let_7 (c_2Eoption_2ESOME_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 ((s _let_2) ((c_2Epair_2E_2C_2E2 (_let_4 V0y0_2E0)) _let_5))) (_let_3 (c_2Eset__relation_2Estrict_2E1 (_let_3 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_1)))))))) (exists ((V5x0_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V4w1_2E0))) (let ((_let_2 ((s A_27a) V5x0_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (and (= (_let_3 (((c_2Ewellorder_2Ewo2wo_2E3 _let_1) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V3w2_2E0)) _let_2)) (_let_3 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y0_2E0)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_1))))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u) (V3l_27 Bool)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_5))) (= (or (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1))) V3l_27) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1))) V3l_27))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Elist_2EEXISTS_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) _let_1))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eprim__rec_2Ewellfounded_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Eprim__rec_2Ewellfounded_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumpair_2Enpair (mono_2Ec_2Enumpair_2Enfst V0n)) (mono_2Ec_2Enumpair_2Ensnd V0n)) V0n)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V1x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))))) (not (= (_let_1 V0b_2E0) (_let_1 c_2Ebag_2EEMPTY__BAG_2E0)))))) (forall ((A_27a d) (V0fun_2E0 u) (V1x_2E0 u) (V2f_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0fun_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Eprim__rec_2ESIMP__REC__REL_2E4 _let_4) _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V2f_2E0)) (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n))))) (and (= (_let_1 ((app_2E2 _let_4) (_let_3 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2) (forall ((V4m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0fun_2E0)))) (let ((_let_3 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4m) V3n) (= (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V4m))))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V2f_2E0)) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V4m))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Epair_2Epair__CASE_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2Epair__CASE_2E0)) _let_5))) _let_3))))))))))) (= (_let_124 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum)) (_let_124 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (A_27b d) (V0z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_2) A_27a)))) V0z_2E0))) (let ((_let_4 (s _let_2))) (= (_let_4 (c_2EerrorStateMonad_2EJOIN_2E1 _let_3)) (_let_4 ((c_2EerrorStateMonad_2EBIND_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ecombin_2EI_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V4t)) ((F7 V1a) V4t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V19t mono_2Etyop_2Enum_2Enum)) (= ((F6 V0b) V19t) (not (V0b V19t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V16t)) ((F5 V0b) V16t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V14t) (not (V1a V14t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V8t)) ((F2 V0b) V8t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (((F3 V1a) V0b) V11t) (or (not (V0b V11t)) (not (V1a V11t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V9t mono_2Etyop_2Enum_2Enum)) (= (and (not (V1a V9t)) (not (V0b V9t))) (((F8 V1a) V0b) V9t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F9 V1a) V0b) V12t) (and (not (V1a V12t)) (V0b V12t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (((F11 V1a) V0b) V20t) (and (V1a V20t) (not (V0b V20t))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V17t) (V0b V17t)) (((F10 V1a) V0b) V17t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F4 V1a)) V0b) V13x)) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V13x))) (forall ((V18x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V18x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F6 V0b)) ((F11 V1a) V0b)) V18x))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V15x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F5 V0b)) ((F10 V1a) V0b)) V15x))) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V10x) (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL ((F3 V1a) V0b)) ((F9 V1a) V0b)) V10x)))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V7x) (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F2 V0b)) ((F8 V1a) V0b)) V7x)))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V5x) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL F1) V1a) V5x))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL F0) (F7 V1a)) V2x)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x)))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (c_2Elist_2ESNOC_2E2 ((s A_27a) V0x_2E0)))) (= (_let_1 (c_2Elist_2ETL_2E1 (_let_1 (_let_3 _let_2)))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_2))) (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 (_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0k_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0k_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2EerrorStateMonad_2EBIND_2E2 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) (c_2EerrorStateMonad_2EUNIT_2E1 _let_1))) _let_4)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2R2_2E0 u) (V3R1_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V3R1_2E0)) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V2R2_2E0)) _let_2))) _let_1))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V3R1_2E0)) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V2R2_2E0)) _let_2) _let_1)))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V0m))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C V0m))) (and (_let_2 (mono_2Ec_2Enum_2ESUC _let_1)) (_let_2 _let_1))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) A_27a)) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (V0m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (c_2Eprim__rec_2Emeasure_2E1 ((s (_let_1 tyop_2Enum_2Enum)) V0m_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (and (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 ((c_2Eprim__rec_2ESIMP__REC_2E3 (_let_3 V0x_2E0)) _let_2))) (= (_let_3 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2m))))) (_let_3 ((app_2E2 _let_2) (_let_3 (_let_4 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m)))))))))))) (= (_let_1 (((c_2Eprim__rec_2ESIMP__REC_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0)))) _let_2))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enum_2ESUC V0m)) (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_27_2E0 u) (V1f_2E0 u) (V2M_27_2E0 u) (V3M_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V2M_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_4 (s A_27c))) (let ((_let_5 (_let_1 V3M_2E0))) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s A_27c))) (let ((_let_7 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (=> (= (_let_7 V2M_27_2E0) (_let_7 ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) (= (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V1f_2E0)) _let_2))) _let_1)) (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V0f_27_2E0)) _let_2))) _let_1)))))))))))) (= _let_5 _let_2)) (= (_let_4 ((c_2Epair_2EUNCURRY_2E2 (_let_3 V1f_2E0)) _let_5)) (_let_4 ((c_2Epair_2EUNCURRY_2E2 (_let_3 V0f_27_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V2x_2E0)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 ((s _let_1) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_6) _let_5)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) c_2Epred__set_2EINSERT_2E0)) _let_6))) _let_5))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27c) A_27d)) (_let_3 A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Equotient_2E_2D_2D_3E_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2ECURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2ECURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Esymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1p_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1p_2E0)))) (exists ((V2x_2E0 u) (V3y_2E0 u)) (forall ((V4x_27_2E0 u) (V5x_27_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5x_27_27_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V4x_27_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (and (= _let_4 (_let_3 V2x_2E0)) (= _let_2 (_let_1 V3y_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V1p_2E0)) _let_4))) _let_2)))))))))))))) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1)) V0rep_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) (_let_1 _let_4)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Eposet_2Eup__continuous_2E2 _let_6) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eposet_2Eup__continuous_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0s_2E0 u)) (=> (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 V0P_2E0)) (_let_1 V1Q_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1Q_2E0)))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_27_2E0 u) (V1M_2E0 u) (V2M_27_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))))) (let ((_let_2 (s ((tyop_2Epair_2Eprod A_27b) A_27c)))) (let ((_let_3 (_let_2 V2M_27_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_2 V1M_2E0))) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27c) V5y_2E0))) (let ((_let_2 ((s A_27b) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27b) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s A_27a))) (let ((_let_7 (s ((tyop_2Epair_2Eprod A_27b) A_27c)))) (=> (= (_let_7 V2M_27_2E0) (_let_7 ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) (= (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V3f_2E0)) _let_2))) _let_1)) (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V0f_27_2E0)) _let_2))) _let_1)))))))))))) (= _let_5 _let_3)) (= (_let_4 ((c_2Epair_2Epair__CASE_2E2 _let_5) (_let_1 V3f_2E0))) (_let_4 ((c_2Epair_2Epair__CASE_2E2 _let_3) (_let_1 V0f_27_2E0))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0p_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27b) A_27c)) V0p_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V1f_2E0))) (let ((_let_4 (s A_27a))) (= (_let_4 ((c_2Epair_2Epair__CASE_2E2 _let_1) _let_3)) (_let_4 ((app_2E2 ((s _let_2) ((app_2E2 _let_3) ((s A_27b) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27c) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumpair_2Etri V0n) ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2A V0n) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (forall ((A_27a1 d) (A_27a2 d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a1) A_27a2))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Ebool_2ELET_2E2 _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2EindexedLists_2EMAPi_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) A_27b))) V0f_2E0)) _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 A_27c)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Epair_2EFST_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Epair_2EFST_2E0)) _let_4))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))) (forall ((V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_1 ((c_2Erich__list_2EBUTLASTN_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))))))))))))) (forall ((V0l1_2E0 u) (V1l2_2E0 u) (V2P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0l1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V2P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Elist_2Elist A_27b))) (let ((_let_7 ((s _let_6) V1l2_2E0))) (let ((_let_8 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_8) tyop_2Emin_2Ebool))) (let ((_let_10 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_10 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_10 (c_2Elist_2ELENGTH_2E1 _let_7)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_9)) F0_2E0)) _let_4))) ((s (tyop_2Elist_2Elist _let_8)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_6)) ((c_2Epair_2E_2C_2E2 _let_2) _let_7))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0w1_2E0 u) (V1w2_2E0 u) (V2w3_2E0 u)) (let ((_let_1 ((s (tyop_2Ewellorder_2Ewellorder A_27c)) V2w3_2E0))) (let ((_let_2 (c_2Ewellorder_2Eorderlt_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ewellorder_2Eorderlt_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27b) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Epair_2E_23_23_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Epair_2E_23_23_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27d) A_27c)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 A_27d)) (_let_1 A_27c)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29 V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Efcp_2EFCP__HD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Efcp_2EFCP__HD_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1t_2E0 u) (V2l_2E0 u) (V3h_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V4R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (= (exists ((V5h_27_2E0 u) (V6t_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V6t_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 (s (_let_3 _let_5)))) (let ((_let_7 (_let_6 V4R_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((s A_27b) V5h_27_2E0))) (and (= (_let_1 V2l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 _let_9) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 _let_7) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))) ((s A_27a) V3h_2E0)))) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2EindexedLists_2ELIST__RELi_2E3 (_let_6 ((c_2Ecombin_2Eo_2E2 _let_7) ((s (_let_3 tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Enum_2ESUC))))) ((s (tyop_2Elist_2Elist A_27a)) V1t_2E0)) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_3 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3h_2E0)) (_let_3 V1t_2E0)))) (_let_1 V2l_2E0))))) (= (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_3 c_2Elist_2ENIL_2E0)) _let_2))))))))))) (forall ((V0y2 mono_2Etyop_2Enum_2Enum) (V1y1 mono_2Etyop_2Enum_2Enum) (V2x2 mono_2Etyop_2Enum_2Enum) (V3x1 mono_2Etyop_2Enum_2Enum)) (= (and (= V1y1 V0y2) (= V3x1 V2x2)) (= ((mono_2Ec_2Enumpair_2Enpair V3x1) V1y1) ((mono_2Ec_2Enumpair_2Enpair V2x2) V0y2)))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1Q_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ELEX_2E2 _let_4) _let_2))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_4 ((s _let_3) V0ll_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (= (_let_2 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Ellist_2ELHD_2E1 _let_4)))) (_let_2 c_2Ellist_2ELNIL_2E0)))))))) (forall ((V0ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0ll_2E0))) (let ((_let_5 (_let_3 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption _let_2)) (c_2Ellist_2ELTL_2E1 _let_4)))))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_7 (s _let_1))) (let ((_let_8 (_let_7 (c_2Eoption_2ETHE_2E1 (_let_6 (c_2Ellist_2ELHD_2E1 _let_4)))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_7 c_2Ellist_2ELNIL_2E0))) (= (_let_7 (c_2Ellist_2ELFLATTEN_2E1 _let_4)) (_let_7 (((c_2Ebool_2ECOND_2E3 (_let_9 ((c_2Ellist_2Eevery_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 _let_10))) _let_4))) _let_10) (_let_7 (((c_2Ebool_2ECOND_2E3 (_let_9 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (_let_7 (c_2Ellist_2ELFLATTEN_2E1 _let_5))) (_let_7 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Ellist_2ELHD_2E1 _let_8))))) (_let_7 (c_2Ellist_2ELFLATTEN_2E1 (_let_3 ((c_2Ellist_2ELCONS_2E2 (_let_7 (c_2Eoption_2ETHE_2E1 (_let_6 (c_2Ellist_2ELTL_2E1 _let_8))))) _let_5)))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epair_2EPROD__ALL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epair_2EPROD__ALL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_8 (((c_2Ebag_2EBAG__MERGE_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ebag_2EBAG__MERGE_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_2 (_let_1 V0f_2E0))) (= (_let_1 (c_2Epair_2ECURRY_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c)) (c_2Epair_2EUNCURRY_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EpatternMatches_2EAPPLY__REDUNDANT__ROWS__INFO_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EREP__prod_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EREP__prod_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_4 (_let_3 (_let_2 A_27c)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 A_27c))) (let ((_let_7 (_let_2 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2EC_2E2 _let_5) _let_1)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2EC_2E0)) _let_5))) _let_1)))))))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a1) ((tyop_2Emin_2Efun A_27a2) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a1) A_27a2)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1p_27_2E0 u) (V2P_2E0 u) (V3P_27_2E0 u) (V4Q_2E0 u) (V5Q_27_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V1p_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V0p_2E0))) (=> (and (forall ((V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 ((s A_27b) V9y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (=> (= (_let_4 V1p_27_2E0) (_let_4 ((c_2Epair_2E_2C_2E2 ((s A_27a) V8x_2E0)) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V4Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V5Q_27_2E0)) _let_1)))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (=> (= (_let_4 V1p_27_2E0) (_let_4 ((c_2Epair_2E_2C_2E2 _let_1) ((s A_27b) V7y_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1)))))))))) (= _let_6 _let_2)) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epair_2EPROD__ALL_2E3 (_let_4 V2P_2E0)) (_let_3 V4Q_2E0)) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epair_2EPROD__ALL_2E3 (_let_4 V3P_27_2E0)) (_let_3 V5Q_27_2E0)) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_2)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2v1_2E0 u) (V3v2_2E0 u) (V4R1_27_2E0 u) (V5R2_27_2E0 u) (V6v1_27_2E0 u) (V7v2_27_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V7v2_27_2E0))) (let ((_let_3 (_let_1 V6v1_27_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s (_let_6 (_let_6 tyop_2Emin_2Ebool))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V3v2_2E0))) (let ((_let_10 (_let_1 V2v1_2E0))) (=> (and (= _let_10 _let_3) (= _let_9 _let_2) (forall ((V12a_2E0 u) (V13b_2E0 u) (V14c_2E0 u) (V15d_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V15d_2E0))) (let ((_let_3 (_let_1 V13b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s A_27a))) (let ((_let_10 (_let_9 V14c_2E0))) (let ((_let_11 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_12 (_let_9 V12a_2E0))) (=> (and (= (_let_11 V6v1_27_2E0) (_let_11 ((c_2Epair_2E_2C_2E2 _let_12) _let_3))) (= _let_12 _let_10) (= (_let_11 V7v2_27_2E0) (_let_11 ((c_2Epair_2E_2C_2E2 _let_10) _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1R2_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5R2_27_2E0)) _let_3))) _let_2)))))))))))))))))) (forall ((V8a_2E0 u) (V9b_2E0 u) (V10c_2E0 u) (V11d_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V10c_2E0))) (let ((_let_3 (_let_1 V8a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (s A_27b))) (let ((_let_10 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (=> (and (= (_let_10 V6v1_27_2E0) (_let_10 ((c_2Epair_2E_2C_2E2 _let_3) (_let_9 V9b_2E0)))) (= (_let_10 V7v2_27_2E0) (_let_10 ((c_2Epair_2E_2C_2E2 _let_2) (_let_9 V11d_2E0))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R1_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V4R1_27_2E0)) _let_3))) _let_2))))))))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Epair_2ELEX_2E4 (_let_7 V0R1_2E0)) (_let_5 V1R2_2E0)) _let_10) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Epair_2ELEX_2E4 (_let_7 V4R1_27_2E0)) (_let_5 V5R2_27_2E0)) _let_3) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 (_let_3 ((tyop_2Emin_2Efun _let_2) _let_6)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2ES_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2ES_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)) (mono_2Ec_2Epred__set_2Ecount V0n))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_1 A_27c)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_1 (_let_2 A_27c)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_4 _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s _let_10))) (= (_let_12 ((c_2Ecombin_2Eo_2E2 _let_9) _let_6)) (_let_12 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Ecombin_2Eo_2E0)) _let_9))) _let_6)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0f_2E0))) (let ((_let_4 (s A_27c))) (= (_let_4 ((c_2Epair_2EUNCURRY_2E2 _let_3) _let_1)) (_let_4 ((app_2E2 ((s _let_2) ((app_2E2 _let_3) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27c) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Epair_2E_23_23_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Epair_2E_23_23_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 ((s A_27c) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27c) A_27d))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (exists ((V1q_2E0 u) (V2r_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_1 V0x_2E0) (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27a) V1q_2E0)) ((s A_27b) V2r_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_5 _let_2)) (_let_5 _let_1)))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Ecombin_2Eo_2E1 _let_4)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Ecombin_2Eo_2E0)) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (forall ((V2p__1_2E0 u) (V3p__2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2p__1_2E0)) ((s A_27b) V3p__2_2E0)))))))) (forall ((V1p_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1p_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (exists ((V1q_2E0 u) (V2r_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_1 V0x_2E0) (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27a) V1q_2E0)) ((s A_27b) V2r_2E0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27c) V3y_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27c) A_27d)) V1g_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod A_27b) A_27d)))) (= (_let_5 (((c_2Epair_2E_23_23_2E3 _let_4) _let_2) ((s ((tyop_2Epair_2Eprod A_27a) A_27c)) ((c_2Epair_2E_2C_2E2 _let_3) _let_1)))) (_let_5 ((c_2Epair_2E_2C_2E2 ((s A_27b) ((app_2E2 _let_4) _let_3))) ((s A_27d) ((app_2E2 _let_2) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Epair_2ERPROD_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Epair_2ERPROD_2E0)) _let_6))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1p_2E0 u)) (let ((_let_1 (s A_27a))) (= (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27b) A_27a)))) (= (_let_1 V1p_2E0) (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27b) V2x_2E0)) ((s A_27a) V0y_2E0)))))) (= (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod A_27b) A_27a)) V1p_2E0))) (_let_1 V0y_2E0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X3_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (tyop_2Elist_2Elist A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (_let_6 _let_11))) (let ((_let_13 (s _let_9))) (= (_let_13 ((((c_2EindexedLists_2EMAP2ia_2E4 _let_8) _let_5) _let_4) _let_2)) (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2EindexedLists_2EMAP2ia_2E0)) _let_8))) _let_5))) _let_4))) _let_2))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_2)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EEL_2E2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u) (V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (_let_1 V1y_2E0))) (let ((_let_7 (_let_3 V0x_2E0))) (= (and (= _let_7 _let_4) (= _let_6 _let_2)) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_7) _let_6)) (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1p_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s A_27a))) (= (= (_let_1 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod A_27b) A_27c)) V1p_2E0)) ((s ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a))) V2f_2E0))) (_let_1 V0v_2E0)) (exists ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((s A_27c) V4y_2E0))) (let ((_let_3 ((s A_27b) V3x_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_5 (s ((tyop_2Epair_2Eprod A_27b) A_27c)))) (and (= (_let_5 V1p_2E0) (_let_5 ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (= (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) V2f_2E0)) _let_3))) _let_2)) (_let_1 V0v_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f1_2E0 u) (V1f2_2E0 u) (V2x1_2E0 u) (V3x2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27b)))) (= (= (_let_1 ((c_2Ellist_2ELUNFOLD_2E2 ((s ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) V0f1_2E0)) ((s A_27a) V2x1_2E0))) (_let_1 ((c_2Ellist_2ELUNFOLD_2E2 ((s ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b)))) V1f2_2E0)) ((s A_27c) V3x2_2E0)))) (exists ((V4R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (and (forall ((V5y1_2E0 u) (V6y2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V5y1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27c) V6y2_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27c))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_4 _let_9)) V4R_2E0)) _let_3))) _let_7))) (or (exists ((V7h_2E0 u) (V8t1_2E0 u) (V9t2_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V9t2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V8t1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27c))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 ((s A_27b) V7h_2E0))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27c) A_27b))) (let ((_let_10 (tyop_2Eoption_2Eoption _let_9))) (let ((_let_11 (s _let_10))) (let ((_let_12 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_13 (tyop_2Eoption_2Eoption _let_12))) (let ((_let_14 (s _let_13))) (and (= (_let_14 ((app_2E2 ((s (_let_7 _let_13)) V0f1_2E0)) (_let_3 V5y1_2E0))) (_let_14 (c_2Eoption_2ESOME_2E1 ((s _let_12) ((c_2Epair_2E_2C_2E2 _let_4) _let_8))))) (= (_let_11 ((app_2E2 ((s (_let_5 _let_10)) V1f2_2E0)) (_let_1 V6y2_2E0))) (_let_11 (c_2Eoption_2ESOME_2E1 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_2) _let_8))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) V4R_2E0)) _let_4))) _let_2))))))))))))))))))) (and (= (_let_6 ((app_2E2 ((s (_let_8 _let_5)) V1f2_2E0)) _let_7)) (_let_6 c_2Eoption_2ENONE_2E0)) (= (_let_2 ((app_2E2 ((s (_let_4 _let_1)) V0f1_2E0)) _let_3)) (_let_2 c_2Eoption_2ENONE_2E0))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V4R_2E0)) ((s A_27a) V2x1_2E0)))) ((s A_27c) V3x2_2E0)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3R_2E0 u) (V2f_2E0 u) (V6a_2E0 u) (V7b_2E0 u)) (let ((_let_1 ((s A_27c) V7b_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 ((s A_27a) V6a_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 ((s _let_8) V3R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_3) _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) F1_2E0)) _let_9))) _let_4))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_6) ((app_2E2 _let_9) _let_5))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))))))) (=> (forall ((V3R_2E0 u) (V4a_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27b) V5b_2E0))) (let ((_let_2 ((s A_27a) V4a_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V3R_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (forall ((V0l2_2E0 u) (V1l1_2E0 u) (V2f_2E0 u) (V3R_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V0l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V1l1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V3R_2E0))) (let ((_let_10 (_let_6 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_4) _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_7))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 (_let_8 ((app_2E2 ((s (_let_12 _let_7)) F0_2E0)) _let_9))) _let_2) ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_5) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((c_2Elist_2ELIST__REL_2E3 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_12 _let_11)) F1_2E0)) _let_9))) _let_5))) _let_2) _let_1))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1y_2E0 u) (V2a_2E0 u) (V3b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V2a_2E0))) (let ((_let_5 (_let_1 V1y_2E0))) (let ((_let_6 (_let_3 V0x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (_let_7 _let_10))) (= (and (= _let_2 _let_5) (= _let_4 _let_6)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_9 _let_11)) F0_2E0)) _let_6))) _let_5))) _let_4))) _let_2)))))))))))))))) (forall ((V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((s A_27b) V1y_2E0))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_3 _let_5))) (let ((_let_7 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_7 (c_2Epair_2EABS__prod_2E1 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_4 _let_6)) F0_2E0)) _let_2))) _let_1))))))))))))))) (forall ((A_27a d) (V0set_2E0 u) (V1e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0set_2E0))) (let ((_let_4 (_let_2 V1e_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c)))) (let ((_let_2 (_let_1 V0g_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_4 (_let_1 V1f_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Epair_2ECURRY_2E1 _let_4)) (_let_3 (c_2Epair_2ECURRY_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27c))) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27b))) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecardinal_2Eset__exp_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecardinal_2Eset__exp_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ESNOC_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ESNOC_2E0)) _let_5))) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X3_2E0))) (let ((_let_4 (_let_2 X2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 (_let_8 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_1))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_6) _let_13))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((((c_2Epair_2ELEX_2E4 _let_10) _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2Epair_2ELEX_2E0)) _let_10))) _let_7))) _let_4))) _let_3)))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s (_let_2 _let_3)) V0R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Equotient_2Erespects_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_1))) _let_1)))))))))) (= (_let_122 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum)) (_let_122 c_2Elist_2ECONS_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2Epair_2Epair__CASE_2E2 _let_4) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2Epair__CASE_2E0)) _let_4))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0p_2E0 u) (V1f_2E0 u) (V2g_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V0p_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V2g_2E0))) (let ((_let_3 (s A_27d))) (= (_let_3 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod A_27c) A_27d)) (((c_2Epair_2E_23_23_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1f_2E0)) _let_2) _let_1)))) (_let_3 ((app_2E2 _let_2) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0R1_2E0 u) (V2s_2E0 u) (V1R2_2E0 u) (V3t_2E0 u) (V4u_2E0 u) (V5v_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5v_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V4u_2E0))) (let ((_let_5 (_let_1 V3t_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 ((s _let_8) V1R2_2E0))) (let ((_let_10 (_let_3 V2s_2E0))) (let ((_let_11 (tyop_2Emin_2Efun A_27a))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((s _let_13) V0R1_2E0))) (let ((_let_15 (_let_11 _let_7))) (let ((_let_16 (_let_6 _let_15))) (let ((_let_17 ((tyop_2Emin_2Efun _let_8) _let_16))) (let ((_let_18 (_let_11 _let_17))) (let ((_let_19 (s _let_7))) (let ((_let_20 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 (_let_19 ((app_2E2 _let_9) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 ((s _let_12) ((app_2E2 _let_14) _let_10))) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 (_let_19 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_13) _let_18)) F1_2E0)) _let_14))) _let_10))) _let_9))) _let_5))) _let_4))) _let_2))))))))))))))))))))))))) (=> (forall ((V0R1_2E0 u) (V1R2_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s A_27b) V3t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V1R2_2E0))) (let ((_let_6 ((s A_27a) V2s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) V0R1_2E0))) (let ((_let_10 (_let_7 _let_3))) (let ((_let_11 (_let_2 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_4))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_7 _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_8))) (let ((_let_16 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_17 (s _let_16))) (let ((_let_18 (_let_2 _let_16))) (let ((_let_19 (_let_7 _let_18))) (let ((_let_20 (_let_12 _let_19))) (= (_let_17 ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s (_let_15 _let_20)) F0_2E0)) _let_9))) _let_5))) _let_6))) _let_1)) (_let_17 (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_15 _let_14)) F1_2E0)) _let_9))) _let_6))) _let_5))) _let_1)))))))))))))))))))))))))) (forall ((V0R1_2E0 u) (V1R2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V1R2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V0R1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 (_let_1 _let_8)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 (s (_let_7 _let_8)))) (= (_let_11 ((c_2Epair_2ERPROD_2E2 _let_6) _let_3)) (_let_11 (c_2Epair_2EUNCURRY_2E1 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) (_let_1 V1t_2E0))))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2)))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EpatternMatches_2EPMATCH__ROW_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V2p_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V1g_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0))) (let ((_let_4 (s ((tyop_2Epair_2Eprod A_27c) A_27d)))) (= (_let_4 (((c_2Epair_2E_23_23_2E3 _let_3) _let_2) _let_1)) (_let_4 ((c_2Epair_2E_2C_2E2 ((s A_27c) ((app_2E2 _let_3) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27d) ((app_2E2 _let_2) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V1rows_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((s A_27a) V0v_2E0))) (let ((_let_7 (c_2EpatternMatches_2EPMATCH_2E2 _let_6))) (let ((_let_8 (s A_27b))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s _let_1) ((app_2E2 ((s _let_2) ((c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_4))) _let_6)))))) (= (_let_8 (_let_7 _let_4)) (_let_8 (_let_7 (_let_3 ((c_2Elist_2ETAKE_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) _let_4))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2EDATATYPE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) c_2Ebool_2EDATATYPE_2E0)) _let_1))))))) (= (_let_120 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29)) (_let_120 c_2Emin_2E_40_2E0)) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum) (V2c mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP V0a) V2c))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0a) ((mono_2Ec_2Eprim__rec_2E_3C V1b) _let_1)) (= ((mono_2Ec_2Elogroot_2ELOG V0a) ((mono_2Ec_2Earithmetic_2E_2B V1b) _let_1)) V2c)))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1Q_27_2E0 u) (V2Q_2E0 u) (V3P_27_2E0 u) (V4P_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V0p_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V6y_2E0 u)) (let ((_let_1 ((s A_27b) V6y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_27_2E0)) _let_1)))))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V4P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epair_2EPROD__ALL_2E3 (_let_3 V4P_2E0)) (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epair_2EPROD__ALL_2E3 (_let_3 V3P_27_2E0)) (_let_2 V1Q_27_2E0)) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1q_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V1q_2E0))) (let ((_let_3 (_let_1 V0p_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (s A_27b))) (= (and (= (_let_5 (c_2Epair_2ESND_2E1 _let_3)) (_let_5 (c_2Epair_2ESND_2E1 _let_2))) (= (_let_4 (c_2Epair_2EFST_2E1 _let_3)) (_let_4 (c_2Epair_2EFST_2E1 _let_2)))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_4 (c_2Elist_2EMAP_2E2 _let_3))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 ((s A_27a) V1x_2E0))) (= (_let_5 (_let_4 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_6) _let_2)))) (_let_5 ((c_2Elist_2ESNOC_2E2 ((s A_27b) ((app_2E2 _let_3) _let_6))) (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a1) ((tyop_2Emin_2Efun A_27a2) A_27c)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a1) A_27a2)) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 (_let_3 X1_2E0))) (let ((_let_6 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (let ((_let_9 (_let_7 _let_8))) (= (_let_3 (((c_2Ebool_2ECOND_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) c_2Ebool_2ECOND_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (V0l2_2E0 u) (V1l1_2E0 u) (V2f2_2E0 u) (V3f1_2E0 u) (V4a2_2E0 u) (V5a1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V4a2_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b)))))) (let ((_let_6 (_let_1 V1l1_2E0))) (let ((_let_7 (_let_3 V5a1_2E0))) (=> (and (= _let_6 _let_2) (= _let_7 _let_4) (forall ((V6n mono_2Etyop_2Enum_2Enum) (V7a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V7a_2E0))) (let ((_let_3 ((s (tyop_2Elist_2Elist A_27a)) V0l2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V6n)))) (let ((_let_6 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_5) _let_3)))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_8)))) (let ((_let_10 (s _let_8))) (let ((_let_11 (s _let_7))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V6n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (_let_1 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V3f1_2E0)) _let_5))) _let_6))) _let_2)) (_let_1 ((app_2E2 (_let_11 ((app_2E2 (_let_10 ((app_2E2 (_let_9 V2f2_2E0)) _let_5))) _let_6))) _let_2))))))))))))))))) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_5 V3f1_2E0)) _let_7) _let_6)) (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 (_let_5 V2f2_2E0)) _let_4) _let_2)))))))))))) (forall ((A_27a d) (V0a1_2E0 u) (V1a0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (not (= (_let_1 c_2Elist_2ENIL_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1a0_2E0)) (_let_1 V0a1_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) (_let_3 _let_1)))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_1))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 ((s _let_2) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_1) _let_9))) (= (_let_6 (((c_2Elist_2Elist__CASE_2E3 _let_8) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) c_2Elist_2Elist__CASE_2E0)) _let_8))) _let_7))) _let_5)))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (forall ((V2p1_2E0 u) (V3p2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V2p1_2E0)))) ((s A_27b) V3p2_2E0)))))) (forall ((V1p_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1p_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0P_2E0)) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_6))) _let_5))) _let_3))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2b_2E0 u) (V3a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V3a_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (_let_1 V0y_2E0))) (let ((_let_7 (_let_3 V1x_2E0))) (= (and (= _let_7 _let_4) (= _let_6 _let_2)) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_7) _let_6)) (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1))) (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2p1_2E0 u) (V3p2_2E0 u)) (let ((_let_1 ((s A_27b) V3p2_2E0))) (let ((_let_2 ((s A_27a) V2p1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) A_27c))) (let ((_let_5 ((s _let_4) V0P_2E0))) (let ((_let_6 (s A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_2))) _let_1)) (_let_6 ((app_2E2 _let_5) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))))))))))))) (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_4 ((s _let_3) V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_6 (s A_27c))) (= (_let_6 ((app_2E2 _let_4) _let_2)) (_let_6 ((c_2Epair_2EUNCURRY_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) F0_2E0)) _let_4))) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V0g_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27d) A_27c)) V1f_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_8 (s (_let_7 A_27c)))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) ((s (_let_7 A_27d)) (c_2Epair_2EUNCURRY_2E1 _let_4)))) (_let_8 (c_2Epair_2EUNCURRY_2E1 ((s (_let_3 _let_6)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_6)) (c_2Ecombin_2Eo_2E1 _let_5))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27a) (c_2Epair_2EFST_2E1 _let_2))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_2)))) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V1a))) (let ((_let_2 (mono_2Ec_2Elogroot_2ELOG V1a))) (let ((_let_3 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V1a) (_let_3 V2b) (_let_3 V0n)) (= (_let_2 ((mono_2Ec_2Earithmetic_2E_2A (_let_1 (mono_2Ec_2Enum_2ESUC V0n))) V2b)) (mono_2Ec_2Enum_2ESUC (_let_2 ((mono_2Ec_2Earithmetic_2E_2A (_let_1 V0n)) V2b))))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0R1_2E0 u) (V2s_2E0 u) (V1R2_2E0 u) (V3t_2E0 u) (V4u_2E0 u) (V5v_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5v_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V4u_2E0))) (let ((_let_5 (_let_1 V3t_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 ((s _let_8) V1R2_2E0))) (let ((_let_10 (_let_3 V2s_2E0))) (let ((_let_11 (tyop_2Emin_2Efun A_27a))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((s _let_13) V0R1_2E0))) (let ((_let_15 (_let_11 _let_7))) (let ((_let_16 (_let_6 _let_15))) (let ((_let_17 ((tyop_2Emin_2Efun _let_8) _let_16))) (let ((_let_18 (_let_11 _let_17))) (let ((_let_19 (s _let_7))) (let ((_let_20 (s tyop_2Emin_2Ebool))) (= (or (and (= _let_10 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 (_let_19 ((app_2E2 _let_9) _let_5))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 ((s _let_12) ((app_2E2 _let_14) _let_10))) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_20 ((app_2E2 (_let_19 ((app_2E2 ((s _let_15) ((app_2E2 ((s _let_16) ((app_2E2 ((s _let_17) ((app_2E2 ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_13) _let_18)) F1_2E0)) _let_14))) _let_10))) _let_9))) _let_5))) _let_4))) _let_2))))))))))))))))))))))))) (=> (forall ((V0R1_2E0 u) (V1R2_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s A_27b) V3t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V1R2_2E0))) (let ((_let_6 ((s A_27a) V2s_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) V0R1_2E0))) (let ((_let_10 (_let_7 _let_3))) (let ((_let_11 (_let_2 _let_10))) (let ((_let_12 (tyop_2Emin_2Efun _let_4))) (let ((_let_13 (_let_12 _let_11))) (let ((_let_14 (_let_7 _let_13))) (let ((_let_15 (tyop_2Emin_2Efun _let_8))) (let ((_let_16 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_17 (s _let_16))) (let ((_let_18 (_let_2 _let_16))) (let ((_let_19 (_let_7 _let_18))) (let ((_let_20 (_let_12 _let_19))) (= (_let_17 ((app_2E2 ((s _let_18) ((app_2E2 ((s _let_19) ((app_2E2 ((s _let_20) ((app_2E2 ((s (_let_15 _let_20)) F0_2E0)) _let_9))) _let_5))) _let_6))) _let_1)) (_let_17 (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_15 _let_14)) F1_2E0)) _let_9))) _let_6))) _let_5))) _let_1)))))))))))))))))))))))))) (forall ((V0R1_2E0 u) (V1R2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) V1R2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V0R1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 (_let_1 _let_8)))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_9))) (let ((_let_11 (s (_let_7 _let_8)))) (= (_let_11 ((c_2Epair_2ELEX_2E2 _let_6) _let_3)) (_let_11 (c_2Epair_2EUNCURRY_2E1 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F0_2E0)) _let_6))) _let_3)))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2EMONOID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2EMONOID_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2R4_2E0 u) (V3R3_2E0 u) (V4R2_2E0 u) (V5R1_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (s (_let_6 (_let_6 tyop_2Emin_2Ebool))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (_let_1 V8x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3R3_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R4_2E0)) _let_3))) _let_2))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V5R1_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V4R2_2E0)) _let_3))) _let_2)))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Epair_2ELEX_2E4 (_let_7 V5R1_2E0)) (_let_5 V3R3_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Epair_2ELEX_2E4 (_let_7 V4R2_2E0)) (_let_5 V2R4_2E0)) _let_3) _let_2)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V1abs1_2E0 u) (V5rep2_2E0 u) (V6f_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_3 ((s _let_2) V6f_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_5 ((s _let_4) V5rep2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27c))) (let ((_let_8 ((s _let_7) V1abs1_2E0))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_6 A_27b))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_4) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_5))) _let_3))) _let_1)) (_let_9 ((((c_2Equotient_2E_2D_2D_3E_2E4 _let_8) _let_5) _let_3) _let_1)))))))))))))))) (forall ((V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27d))) (let ((_let_4 ((s _let_3) V6f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 A_27c))) (let ((_let_8 (_let_6 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s A_27d))) (= (_let_11 ((app_2E2 _let_4) _let_1)) (_let_11 ((((c_2Equotient_2E_2D_2D_3E_2E4 ((s (_let_2 A_27a)) V2rep1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) ((s _let_7) V1abs1_2E0)))) ((s _let_5) V5rep2_2E0)))) _let_4))) _let_1))))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption _let_1))))) (= (_let_2 (c_2Ellist_2ELDROP_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (_let_2 c_2Ellist_2ELTL_2E0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 ((s A_27a) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) _let_5))) (let ((_let_7 (s A_27c))) (= (_let_7 (((c_2Epair_2ECURRY_2E3 _let_4) _let_2) _let_1)) (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2ECURRY_2E0)) _let_4))) _let_2))) _let_1))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0l1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Elist_2EALL__DISTINCT_2E1 _let_2)))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EindexedLists_2EMAPi_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EindexedLists_2EMAPi_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Epair_2EREP__prod_2E1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) (c_2Epair_2EABS__prod_2E1 _let_2)))) _let_2) (exists ((V2x_2E0 u) (V3y_2E0 u)) (forall ((V4x_27_2E0 u) (V5x_27_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_27_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V5x_27_27_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V1r_2E0)) _let_2))) _let_4))) (and (= _let_4 (_let_3 V3y_2E0)) (= _let_2 (_let_1 V2x_2E0))))))))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Epair_2EABS__prod_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (c_2Epair_2EREP__prod_2E1 _let_2)))) _let_2)))))) (forall ((V0y (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (or (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (V0y V3x) mono_2Ec_2Ebool_2ET)) (= V0y (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (V0y V2x) (or (V1a V2x) (V0y ((mono_2Ec_2Earithmetic_2E_2B V2x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etransitive_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etransitive_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etransitive_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ELEX_2E2 _let_4) _let_2))))))))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1N_2E0 u) (V2b_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((s A_27b) V2b_2E0))) (let ((_let_2 ((s A_27a2) V6y_2E0))) (let ((_let_3 ((s A_27a1) V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27c))) (let ((_let_6 (tyop_2Emin_2Efun A_27a2))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (tyop_2Emin_2Efun A_27a1))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) V1N_2E0))) (let ((_let_11 (s A_27c))) (let ((_let_12 (_let_6 A_27c))) (let ((_let_13 (_let_8 _let_12))) (let ((_let_14 (_let_4 _let_13))) (= (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) F1_2E0)) _let_10))) _let_1))) _let_3))) _let_2)) (_let_11 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 _let_10) _let_3))) _let_2))) _let_1)))))))))))))))))) (=> (forall ((V1N_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27a2) V4y_2E0))) (let ((_let_2 ((s A_27a1) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a2) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a1) _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1N_2E0))) (let ((_let_8 (s _let_4))) (let ((_let_9 (s _let_3))) (= (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) F0_2E0)) _let_7))) _let_2))) _let_1)) (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_2))) _let_1))))))))))))) (forall ((V0M_2E0 u) (V1N_2E0 u) (V2b_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a1) A_27a2))) (let ((_let_2 ((s _let_1) V0M_2E0))) (let ((_let_3 ((s A_27b) V2b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27c))) (let ((_let_6 (tyop_2Emin_2Efun A_27a2))) (let ((_let_7 (tyop_2Emin_2Efun A_27a1))) (let ((_let_8 (_let_7 (_let_6 _let_5)))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V1N_2E0))) (let ((_let_11 (_let_7 (_let_6 A_27c)))) (let ((_let_12 (_let_4 _let_11))) (let ((_let_13 (tyop_2Emin_2Efun _let_8))) (let ((_let_14 (tyop_2Emin_2Efun _let_1))) (let ((_let_15 (s A_27c))) (= (_let_15 ((app_2E2 ((s _let_5) ((c_2Ebool_2ELET_2E2 ((s (_let_14 _let_5)) (c_2Epair_2EUNCURRY_2E1 (_let_9 ((app_2E2 ((s (_let_13 _let_8)) F0_2E0)) _let_10))))) _let_2))) _let_3)) (_let_15 ((c_2Ebool_2ELET_2E2 ((s (_let_14 A_27c)) (c_2Epair_2EUNCURRY_2E1 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_13 _let_12)) F1_2E0)) _let_10))) _let_3))))) _let_2)))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((A_27a d) (V0X_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (forall ((V2Y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2Y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 V0X_2E0)) _let_3))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_2 V0X_2E0)) (_let_2 (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_1 A_27b)) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Epair_2ESND_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Epair_2ESND_2E0)) _let_4))))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Ereflexive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Ereflexive_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Ereflexive_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ELEX_2E2 _let_4) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_2 (_let_1 V0g_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c)))) (let ((_let_4 (_let_1 V1f_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_3 (c_2Epair_2EUNCURRY_2E1 _let_2))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27d) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 ((s (_let_6 _let_5)) V1f_2E0))) (let ((_let_8 (_let_4 A_27c))) (let ((_let_9 (_let_2 _let_8))) (let ((_let_10 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_11 (s (_let_10 A_27c)))) (= (_let_11 ((c_2Ecombin_2EC_2E2 ((s (_let_10 _let_3)) (c_2Epair_2EUNCURRY_2E1 _let_7))) _let_1)) (_let_11 (c_2Epair_2EUNCURRY_2E1 ((s (_let_6 _let_8)) ((c_2Ecombin_2EC_2E2 ((s (_let_6 _let_9)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Ecombin_2EC_2E0)) _let_7))) _let_1))))))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V2x_2E0)))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (= (_let_4 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Eoption_2EOPTION__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) ((c_2Epair_2E_2C_2E2 _let_2) ((s A_27b) V1y_2E0))))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27c) A_27a)) tyop_2Emin_2Ebool)))) (and (= (_let_3 ((c_2Epred__set_2ECROSS_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)) _let_2)) (_let_3 c_2Epred__set_2EEMPTY_2E0)) (= (_let_1 ((c_2Epred__set_2ECROSS_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0P_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0)))))))))))) (forall ((A_27a d) (V0G_2E0 u) (V1nodes_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (= (exists ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 ((s _let_3) V1nodes_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_1 V2y_2E0)) (_let_5 ((c_2EdirGraph_2EREACH_2E2 ((s (_let_4 _let_3)) V0G_2E0)) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EdirGraph_2EREACH__LIST_2E3 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0G_2E0)) ((s _let_1) V1nodes_2E0)) ((s A_27a) V2y_2E0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Esymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V0g_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_8 (tyop_2Emin_2Efun _let_5))) (let ((_let_9 ((s (_let_8 _let_7)) V1f_2E0))) (let ((_let_10 (_let_1 _let_7))) (let ((_let_11 (_let_1 A_27c))) (let ((_let_12 ((tyop_2Emin_2Efun _let_2) _let_11))) (let ((_let_13 (s (_let_8 A_27c)))) (= (_let_13 ((c_2Ecombin_2ES_2E2 _let_9) ((s (_let_8 A_27d)) (c_2Epair_2EUNCURRY_2E1 _let_4)))) (_let_13 (c_2Epair_2EUNCURRY_2E1 ((s (_let_3 _let_11)) ((c_2Ecombin_2ES_2E2 ((s (_let_3 _let_12)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_12)) c_2Ecombin_2ES_2E0)) ((s (_let_3 _let_10)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) (c_2Ecombin_2Eo_2E1 _let_9))) ((s (_let_3 _let_6)) c_2Epair_2E_2C_2E0)))))) _let_4))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2ESWAP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2ESWAP_2E0)) _let_2)))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((s _let_2) V1ll_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (let ((_let_5 (s _let_1))) (= (_let_5 ((c_2Ellist_2ELNTH_2E2 _let_4) _let_3)) (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption _let_2)) ((c_2Ellist_2ELDROP_2E2 _let_4) _let_3))) ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Ellist_2ELHD_2E0)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) (_let_4 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27d)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27d))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2Epair_2EUNCURRY_2E2 _let_4) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27c) V0y_2E0))) (let ((_let_2 ((s A_27b) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V2f_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod A_27b) A_27c)) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) _let_4)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0P_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))))) (exists ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (s (_let_4 _let_5)))) (= (_let_6 (c_2Elist_2EFIND_2E1 _let_1)) (_let_6 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (c_2Eoption_2EOPTION__MAP_2E1 ((s ((tyop_2Emin_2Efun _let_2) A_27a)) c_2Epair_2ESND_2E0)))) ((s (_let_4 _let_3)) ((c_2Elist_2EINDEX__FIND_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Epred__set_2ELINV__OPT_2E3 _let_6) _let_4) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Epred__set_2ELINV__OPT_2E0)) _let_6))) _let_4))) _let_1)))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Emin_2Efun A_27d) A_27c)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0)))) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Ebool_2EDATATYPE_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27d) A_27c)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2ES_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2ES_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (and (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V2x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b) V2x)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V2x))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u) (V1lam_2E0 u) (V2v_2E0 u)) (let ((_let_1 ((s A_27a) V2v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (_let_3 V1lam_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((s (_let_2 tyop_2Emin_2Ebool)) V0r_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (= (_let_5 ((c_2Ebool_2ELET_2E2 (_let_3 ((c_2Ebool_2ERES__ABSTRACT_2E2 _let_6) _let_4))) _let_1)) (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V2p_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 (_let_2 A_27b))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) _let_3))) (let ((_let_6 ((s _let_5) V2p_2E0))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F2_2E0)) _let_6))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s A_27b) ((app_2E2 ((s _let_4) (c_2Epair_2EFST_2E1 _let_6))) _let_1))) ((s A_27c) ((app_2E2 ((s _let_3) (c_2Epair_2ESND_2E1 _let_6))) _let_1))))))))))))))) (=> (forall ((V0P_2E0 u) (V2p_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod (_let_1 A_27b)) (_let_1 A_27c)))) (let ((_let_3 ((s _let_2) V2p_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c)))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F1_2E0)) _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_7) ((s _let_4) ((app_2E2 ((s (_let_5 _let_4)) F2_2E0)) _let_3)))))))))))))))) (=> (forall ((V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Epair_2Eprod A_27b) A_27c)))) (let ((_let_2 ((s _let_1) V1f_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_2))))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_1 A_27b)) (_let_1 A_27c))) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebool_2E_3F_21_2E1 (_let_3 ((app_2E2 ((s (_let_6 _let_2)) F0_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebool_2E_3F_21_2E1 ((s _let_5) ((app_2E2 ((s (_let_6 _let_5)) F1_2E0)) _let_4)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((c_2Elist_2ELUPDATE_2E3 ((s A_27a) V3x_2E0)) (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (_let_1 (_let_5 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_5 _let_3))) _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V1m))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_2 V1m) (_let_2 V0n)) (and (_let_1 ((mono_2Ec_2Egcd_2Elcm V0n) V1m)) (_let_1 ((mono_2Ec_2Egcd_2Elcm V1m) V0n))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2Q_2E0 u) (V3P_2E0 u)) (let ((_let_1 ((s A_27b) V0y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_3) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epair_2EPROD__ALL_2E3 _let_4) _let_3) ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))))))))))) (forall ((A_27a1 d) (A_27a2 d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a1) A_27a2))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_2)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)) V0n)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (forall ((V3s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V3s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27c) V0y_2E0))) (let ((_let_2 ((s A_27b) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V2f_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Epair_2Epair__CASE_2E2 ((s ((tyop_2Epair_2Eprod A_27b) A_27c)) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))) _let_4)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (=> (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (exists ((V2y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) ((s (tyop_2Ellist_2Ellist A_27a)) V0ll_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) V2y_2E0)))))))))) (forall ((A_27a d) (A_27b d) (V0d_2E0 u) (V1c_2E0 u) (V2b_2E0 u) (V3a_2E0 u) (V4R2_2E0 u) (V5R1_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0d_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1c_2E0))) (let ((_let_5 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (_let_1 V2b_2E0))) (let ((_let_7 (_let_3 V3a_2E0))) (let ((_let_8 (tyop_2Emin_2Efun A_27b))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((s (_let_8 _let_9)) V4R2_2E0))) (let ((_let_11 (tyop_2Emin_2Efun A_27a))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 ((s (_let_11 _let_12)) V5R1_2E0))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 ((s _let_12) ((app_2E2 _let_13) _let_7))) _let_4))) (and (= _let_7 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 ((s _let_9) ((app_2E2 _let_10) _let_6))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((((c_2Epair_2ELEX_2E4 _let_13) _let_10) (_let_5 ((c_2Epair_2E_2C_2E2 _let_7) _let_6))) (_let_5 ((c_2Epair_2E_2C_2E2 _let_4) _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1ll_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1ll_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (= (= (_let_4 ((c_2Ellist_2ELDROP_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))) _let_3)) (_let_4 (c_2Eoption_2ESOME_2E1 (_let_2 c_2Ellist_2ELNIL_2E0)))) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 ((s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)) (c_2Ellist_2ELLENGTH_2E1 _let_3))) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0n)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Esymmetric_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Esymmetric_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Esymmetric_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ELEX_2E2 _let_4) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (exists ((V1fn_2E0 u)) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 (s A_27c))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27b))) (= (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) A_27c)) V1fn_2E0)) ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))) (_let_4 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0f_2E0)) _let_2))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epair_2EUNCURRY_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epair_2EUNCURRY_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1Q_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ERPROD_2E2 _let_4) _let_2))))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27d)) (_let_3 A_27c)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Ecombin_2Eo_2E1 _let_2)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Ecombin_2Eo_2E0)) _let_2))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) A_27d))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s A_27d))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_2)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Esymmetric_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0p_2E0 u) (V1f_2E0 u) (V2g_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V0p_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1f_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod A_27c) A_27d)) (((c_2Epair_2E_23_23_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V2g_2E0)) _let_1)))) (_let_3 ((app_2E2 _let_2) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (F17 (-> mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (=> (forall ((V0R (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (= (F0 V0R) (mono_2Ec_2Erelation_2EWF_2Emono_2Etyop_2Enum_2Enum V0R))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (F17 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (F13 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (F9 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F15 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (F11 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F7 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (F5 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F16 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F12 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (F8 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F14 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) (F18 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (F10 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (F6 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (F4 V3v) (= V3v (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (= (= V3v mono_2Ec_2Enum_2E0) (F3 V3v))) (=> (forall ((V3v mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT2 _let_1))) (let ((_let_3 (mono_2Ec_2Earithmetic_2EBIT2 _let_2))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EBIT1 _let_2))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_1)))) (let ((_let_6 (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (let ((_let_7 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_6)))) (let ((_let_8 (mono_2Ec_2Earithmetic_2EBIT1 _let_7))) (let ((_let_9 (mono_2Ec_2Earithmetic_2EBIT1 _let_6))) (let ((_let_10 (mono_2Ec_2Earithmetic_2EBIT2 _let_9))) (let ((_let_11 (mono_2Ec_2Earithmetic_2EBIT2 _let_10))) (let ((_let_12 (mono_2Ec_2Earithmetic_2EBIT1 _let_10))) (let ((_let_13 (mono_2Ec_2Earithmetic_2EBIT1 _let_9))) (let ((_let_14 (mono_2Ec_2Earithmetic_2EBIT2 _let_13))) (= (F2 V3v) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F3 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 _let_13)))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F4 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_14))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F5 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_14))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F6 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_12))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F7 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_12))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F8 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_11))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F9 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_11))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F10 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_8))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F11 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_8))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F12 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT2 _let_7)))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F13 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_5))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F14 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_5))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F15 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_4))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F16 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_4))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F17 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 _let_3))))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar (F18 V3v)) (mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Estring_2Echar (mono_2Ec_2Estring_2ECHR (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 _let_3))))) mono_2Ec_2Ebool_2EARB_2Emono_2Etyop_2Estring_2Echar)))))))))))))))))))))))))))))))) (=> (forall ((V1HEX (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar)) (V2a mono_2Etyop_2Enum_2Enum)) (= ((F1 V1HEX) V2a) ((mono_2Ec_2Ebool_2Eliteral__case_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar F2) V2a))) (= mono_2Ec_2EASCIInumbers_2EHEX ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Estring_2Echar (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 F0)) F1)))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0f_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Epair_2EUNCURRY_2E2 _let_4) ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c)))) (let ((_let_2 (_let_1 V0f_2E0))) (= (_let_1 (c_2Epair_2EUNCURRY_2E1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) (c_2Epair_2ECURRY_2E1 _let_2)))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Epair_2ELEX_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Epair_2ELEX_2E0)) _let_6))) _let_3)))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V1b))) (= (_let_1 V0t0) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (V1b V0t0)) (V2a V0t0)) ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1LIST__REL_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V1LIST__REL_27_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0)))) (forall ((V2h1_2E0 u) (V3h2_2E0 u) (V4t1_2E0 u) (V5t2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t2_2E0))) (let ((_let_4 ((s A_27b) V3h2_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V4t1_2E0))) (let ((_let_8 ((s A_27a) V2h1_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) V1LIST__REL_27_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_14 ((s ((tyop_2Emin_2Efun A_27a) _let_13)) V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_8))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 (((c_2Elist_2ELIST__REL_2E3 _let_14) _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_7))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_6 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))))))))))))))))))))) (forall ((V6a0_2E0 u) (V7a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V7a1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V6a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V1LIST__REL_27_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27c) A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27d))) (= (_let_3 (c_2Epair_2ESND_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27d)) c_2Epair_2ESND_2E0)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EFOLDR_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EFOLDR_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0pair_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27a) A_27b))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27c) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) V0pair_2E0)) ((s _let_1) c_2Epair_2E_2C_2E0)))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (=> (V1P V3t) (V0Q V3t)) (((F0 V1P) V0Q) V3t))) (forall ((V0Q (-> mono_2Etyop_2Enum_2Enum Bool)) (V1P (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (=> ((mono_2Ec_2ETemporal__Logic_2ENEXT V1P) V2x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V0Q) V2x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V1P) V0Q)) V2x))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist _let_2))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EGENLIST_2E2 _let_5) _let_1)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EGENLIST_2E0)) _let_5))) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2p_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V2p_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Epair_2EPROD__ALL_2E3 _let_4) _let_2) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_4) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2Etotal_2E1 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) ((c_2Epair_2ELEX_2E2 _let_4) _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum) (X3_2E0 u)) (let ((_let_1 ((s A_27a) X3_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 _let_4))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Eind__type_2EINJP_2E4 _let_7) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_3) ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Eind__type_2EINJP_2E0)) _let_7))) _let_6))) _let_2))) _let_1))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_3) A_27c)) V0f_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 (((c_2Epair_2ECURRY_2E3 _let_4) _let_2) _let_1)) (_let_5 ((app_2E2 _let_4) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (=> (forall ((V1p__1_2E0 u) (V2p__2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V1p__1_2E0)) ((s A_27b) V2p__2_2E0)))))))) (forall ((V3p_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3p_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0p))) (= ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V1m)) V3f)) ((mono_2Ec_2Esum__num_2EGSUM (_let_1 V2n)) V3f)) (exists ((V4q mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V1m) V0p)) V4q) ((mono_2Ec_2Eprim__rec_2E_3C V4q) ((mono_2Ec_2Earithmetic_2E_2B V2n) V0p)) (not (= (V3f V4q) mono_2Ec_2Enum_2E0))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (c_2Elist_2ECONS_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_4 (_let_1 V0l1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Esorting_2EPERM_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (= (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2a) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0m) V1n))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V2a) ((mono_2Ec_2Earithmetic_2EDIV V0m) V1n))) ((mono_2Ec_2Earithmetic_2EMOD V0m) V1n))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1y_2E0))) (= (_let_1 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) ((c_2Epair_2E_2C_2E2 ((s A_27a) V0x_2E0)) _let_2)))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (= ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Ec_2EASCIInumbers_2Enum__from__dec__string) mono_2Ec_2EASCIInumbers_2Enum__to__dec__string) mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Enum_2Enum) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 _let_1)) V0f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Epair_2EUNCURRY_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_21_2E1 ((s (_let_2 tyop_2Emin_2Ebool)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_3))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1r_2E0 u) (V2s_2E0 u) (V3s_27_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V1r_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V3s_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V2s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Efinite__prefixes_2E2 _let_1) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Elinear__order_2E2 _let_1) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2ESING_2E1 (_let_2 ((c_2Eset__relation_2Eminimal__elements_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0)))) (forall ((V1t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1t_2E0)))) (forall ((V2h_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_2 V1t_2E0))))))))))))) (forall ((V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3l_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27d) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 (tyop_2Emin_2Efun A_27d))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 _let_2)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 _let_2))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2EC_2E2 _let_6) _let_1)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_1))))))))))))) (forall ((A_27a d) (V0X_2E0 u) (V1Y_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2P_2E0))) (let ((_let_5 (_let_2 (c_2Epred__set_2EBIGINTER_2E1 _let_4)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 V1Y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_7) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_7) _let_3)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2EDISJOINT_2E2 _let_5) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EUNCURRY_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EUNCURRY_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27b) V1x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) V2f_2E0))) (let ((_let_4 (s _let_2))) (= (_let_4 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption A_27b)) (c_2Eoption_2ESOME_2E1 _let_1))) _let_3)) (_let_4 ((app_2E2 _let_3) _let_1)))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (= (_let_2 ((c_2Eoption_2EOPTION__BIND_2E2 ((s (tyop_2Eoption_2Eoption A_27b)) c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0f_2E0))) (_let_2 c_2Eoption_2ENONE_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eoption_2EOPTION__ALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eoption_2EOPTION__ALL_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n))))))) (forall ((V2m1 mono_2Etyop_2Enum_2Enum) (V3m2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V1f_2E0)))) (let ((_let_3 (s A_27a))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2m1) V0n) (= (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V2m1)))) (_let_3 (_let_2 (_let_1 (i_mono_2Etyop_2Enum_2Enum V3m2))))) ((mono_2Ec_2Eprim__rec_2E_3C V3m2) V0n)) (= V2m1 V3m2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0opt_2E0 u) (V1opt_27_2E0 u) (V2P_2E0 u) (V3P_27_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V1opt_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0opt_2E0))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_4 V1opt_27_2E0) (_let_4 (c_2Eoption_2ESOME_2E1 _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1)))))))))) (= _let_5 _let_2)) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eoption_2EOPTION__ALL_2E2 (_let_3 V2P_2E0)) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eoption_2EOPTION__ALL_2E2 (_let_3 V3P_27_2E0)) _let_2))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27b)) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_4 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_2)) (c_2Eoption_2ESOME_2E1 _let_3))) _let_1)) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 _let_3) _let_1)))))))) (forall ((V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27b) A_27a))) c_2Eoption_2ENONE_2E0)) ((s (tyop_2Eoption_2Eoption A_27b)) V0x_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Estring_2Echar))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Estate__transformer_2EUNIT_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Estate__transformer_2EUNIT_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0a_2E0 u) (V1b_2E0 u) (V2c_2E0 u) (V3d_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3d_2E0))) (let ((_let_3 (_let_1 V1b_2E0))) (let ((_let_4 (_let_1 V2c_2E0))) (let ((_let_5 (_let_1 V0a_2E0))) (let ((_let_6 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((s A_27a) V4x_2E0))) (let ((_let_8 (c_2Ebool_2EIN_2E2 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 ((c_2Elist_2ECONS_2E2 _let_7) (_let_1 c_2Elist_2ENIL_2E0))))) (=> (and (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_10))) _let_3)) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_10))) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 _let_5)))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_6 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))))))) (and (= _let_5 _let_4) (= _let_3 _let_2)))))))))))))) (forall ((V0b Bool)) (let ((_let_1 (mono_2Ec_2Eoption_2EOPTION__GUARD V0b))) (and (= (= _let_1 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Eone_2Eone) (not V0b)) (= (= _let_1 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)) V0b)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (_let_2 V0s_2E0))) (= (_let_2 ((c_2Epred__set_2EINTER_2E2 (_let_2 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_1))) _let_3)) (_let_2 ((c_2Epred__set_2EDELETE_2E2 (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3))) _let_1)))))))) (= (_let_114 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Eone_2Eone)) (_let_114 c_2Eoption_2ENONE_2E0)) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1b) V0t0) (exists ((V2J (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V2J V0t0)) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) (V2J _let_1)) (= (V2J (mono_2Ec_2Enum_2ESUC _let_1)) mono_2Ec_2Enum_2E0)) (V1b _let_1)))) (forall ((V3t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V3t) V0t0))) (let ((_let_2 (V2J (mono_2Ec_2Enum_2ESUC _let_1)))) (or ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (V2J _let_1)) (= _let_2 mono_2Ec_2Enum_2E0))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Eoption_2ESOME_2E1 ((s A_27a) V1a_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Eoption_2ENONE_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V2x_2E0))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V2f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) A_27b))) (= (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) F0_2E0)) _let_1))) _let_4)) (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s (tyop_2Eoption_2Eoption _let_2)) V1f_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_6 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_3) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_4)))) (_let_6 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_5)) (c_2Eoption_2ESOME_2E1 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b))))) (let ((_let_3 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27c)) A_27b)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 (_let_3 _let_6))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_9))) (= (_let_11 ((c_2Ecombin_2Eo_2E2 _let_8) _let_5)) (_let_11 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Ecombin_2Eo_2E0)) _let_8))) _let_5))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (= (_let_113 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_113 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__NONE_2E1 _let_2))) (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d)) (and (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__NONE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)))) mono_2Ec_2Ebool_2ET) (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__NONE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 ((s A_27a) V0x_2E0)))))) mono_2Ec_2Ebool_2EF)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Esorting_2EPARTITION_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Esorting_2EPARTITION_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (_let_1 V0l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 _let_3))) (forall ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V0l1_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 V1l2_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Elist_2EALL__DISTINCT_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))) (forall ((A_27a d) (V0n1 mono_2Etyop_2Enum_2Enum) (V1n2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (= (= V0n1 V1n2) (= (_let_2 (c_2Eind__type_2EINJN_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n1)))) (_let_2 (c_2Eind__type_2EINJN_2E1 (_let_1 (i_mono_2Etyop_2Enum_2Enum V1n2))))))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 c_2Eoption_2ENONE_2E0) (_let_1 (c_2Eoption_2Eoption__ABS_2E1 ((s ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone)) (c_2Esum_2EINR_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))))))))) (forall ((A_27a d) (V0m2_2E0 u) (V1m1_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 (_let_1 V0m2_2E0))) (let ((_let_4 (_let_1 V1m1_2E0))) (= (and (= _let_3 _let_2) (= _let_4 _let_2)) (= (_let_1 ((c_2Eoption_2EOPTION__CHOICE_2E2 _let_4) _let_3)) _let_2))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2)))) (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_1 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) _let_3) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) c_2Eoption_2ESOME_2E0))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27c))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27c))) (let ((_let_6 (s A_27c))) (= (_let_6 ((c_2EpatternMatches_2EPMATCH_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (not (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)) _let_2))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) (exists ((V2p mono_2Etyop_2Enum_2Enum)) (= V1n ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (not (= (_let_1 c_2Epred__set_2EEMPTY_2E0) (_let_1 c_2Epred__set_2EUNIV_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (not ((mono_2Ec_2Eprim__rec_2E_3C V1n) (mono_2Ec_2Enum_2ESUC V0m))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0h_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (tyop_2Eoption_2Eoption A_27b))) V0h_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 _let_3)) V1g_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_7 (c_2Eoption_2EOPTION__MCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_6)) V2f_2E0)))) (let ((_let_8 (s (_let_1 _let_6)))) (= (_let_8 (_let_7 ((s (_let_1 _let_3)) ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_5) _let_2)))) (_let_8 ((c_2Eoption_2EOPTION__MCOMP_2E2 ((s (_let_4 _let_6)) (_let_7 _let_5))) _let_2)))))))))))) (= (_let_112 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29)) (_let_112 c_2Emin_2E_40_2E0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_2 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_2 (c_2Eoption_2Eoption__ABS_2E1 ((s ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone)) (c_2Esum_2EINL_2E1 _let_1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27state d) (V0P_2E0 u)) (=> (and (forall ((V1a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s _let_2) c_2Elist_2ENIL_2E0)) ((s _let_1) V1a_2E0)))))))))) (forall ((V2h_2E0 u) (V3t_2E0 u) (V4a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((s _let_1) V4a_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V3t_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (app_2E2 ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 _let_5) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_4 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) _let_5))) _let_2))))))))))))))))) (forall ((V5v_2E0 u) (V6v1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_3) ((c_2Epair_2E_2C_2E2 ((s _let_2) V5v_2E0)) ((s _let_1) V6v1_2E0)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l2_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0l1_2E0))) (let ((_let_7 (s ((tyop_2Epair_2Eprod _let_4) _let_1)))) (let ((_let_8 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_9 (s tyop_2Enum_2Enum))) (=> (= (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_6))) (j_mono_2Etyop_2Enum_2Enum (_let_9 (c_2Elist_2ELENGTH_2E1 _let_3)))) (= (_let_8 (c_2Elist_2EREVERSE_2E1 (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 _let_6) _let_3)))))) (_let_8 (c_2Elist_2EZIP_2E1 (_let_7 ((c_2Epair_2E_2C_2E2 (_let_5 (c_2Elist_2EREVERSE_2E1 _let_6))) (_let_2 (c_2Elist_2EREVERSE_2E1 _let_3)))))))))))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27d) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__DIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0option_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27b) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) V0option_2E0)) ((s _let_1) c_2Eoption_2ENONE_2E0)))) ((s _let_2) c_2Eoption_2ESOME_2E0)))))))))) (forall ((V0y mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMODEQ V2n))) (=> ((_let_1 V1x) V0y) ((_let_1 (mono_2Ec_2Enum_2ESUC V1x)) (mono_2Ec_2Enum_2ESUC V0y))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 (_let_3 c_2Eoption_2ENONE_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) V2f_2E0))) (let ((_let_8 (c_2Eoption_2EOPTION__MAP2_2E3 _let_7))) (let ((_let_9 (_let_8 (_let_5 c_2Eoption_2ENONE_2E0)))) (let ((_let_10 ((s A_27c) V0y_2E0))) (let ((_let_11 (_let_3 (c_2Eoption_2ESOME_2E1 _let_10)))) (let ((_let_12 ((s A_27b) V1x_2E0))) (let ((_let_13 (_let_8 (_let_5 (c_2Eoption_2ESOME_2E1 _let_12))))) (and (= (_let_1 (_let_13 _let_11)) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_12))) _let_10))))) (= (_let_1 (_let_13 _let_4)) _let_2) (= (_let_1 (_let_9 _let_11)) _let_2) (= (_let_1 (_let_9 _let_4)) _let_2)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_1)) _let_1)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V1))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2e_2E0))) (let ((_let_3 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (= (_let_1 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) _let_2) _let_4)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_3))) (_let_1 ((app_2E2 _let_4) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_3))))) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2A V1k) V0n)) V0n) mono_2Ec_2Enum_2E0)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 ((s _let_2) V1f_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_4 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_2)) (c_2Eoption_2ESOME_2E1 _let_3))) ((s (tyop_2Eoption_2Eoption A_27b)) (c_2Eoption_2ESOME_2E1 _let_1)))) (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 _let_3) _let_1)))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebag_2EBAG__ALL__DISTINCT_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows_2E0 u) (V2row_2E0 u) (V3infos_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V4i Bool) (V5c Bool)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool V5c)))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 (s (tyop_2Elist_2Elist _let_5)))) (let ((_let_7 (_let_6 V1rows_2E0))) (let ((_let_8 ((s _let_5) V2row_2E0))) (let ((_let_9 ((s A_27a) V0v_2E0))) (let ((_let_10 (c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 _let_9))) (let ((_let_11 (s _let_4))) (let ((_let_12 (= (_let_11 ((app_2E2 _let_8) _let_9)) (_let_11 c_2Eoption_2ENONE_2E0)))) (= (and (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_7))) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Emin_2Ebool V3infos_27)) (=> V4i _let_12) (=> _let_12 (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((_let_10 _let_7) _let_3) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V3infos_27))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((_let_10 (_let_6 ((c_2Elist_2ECONS_2E2 _let_8) _let_7))) _let_3) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V4i) V3infos_27)))))))))))))))))))) (forall ((A_27a d) (V0opt_2E0 u) (V1P_27_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V0opt_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_27_2E0)) _let_1)))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eoption_2EOPTION__ALL_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eoption_2EOPTION__ALL_2E2 (_let_2 V1P_27_2E0)) _let_1))))))))) (forall ((V0b Bool)) (= (mono_2Ec_2Eoption_2EOPTION__GUARD V0b) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V0b) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Eone_2Eone))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2t mono_2Etyop_2Enum_2Enum)) (= (F0 V2t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V0a V3t)) ((F1 V0a) V3t))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL F0) (F1 V0a)) V1x)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V0a) V1x)))))) (forall ((A_27a d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27d)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27d)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EZIP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (= (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_2)) (_let_3 c_2Eoption_2ENONE_2E0)) (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2ESTR V0c) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (V0opt_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) V0opt_2E0)))) (exists ((V1x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 V0opt_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V2a) V1b) V0t0) (and (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V3t) V0t0)))) (forall ((V4t mono_2Etyop_2Enum_2Enum)) (V2a ((mono_2Ec_2Earithmetic_2E_2B V4t) V0t0)))) (forall ((V5d mono_2Etyop_2Enum_2Enum)) (=> (and (V1b ((mono_2Ec_2Earithmetic_2E_2B V5d) V0t0)) (forall ((V6t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V6t) V5d) (not (V1b ((mono_2Ec_2Earithmetic_2E_2B V6t) V0t0)))))) (forall ((V7t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V7t) V5d) (V2a ((mono_2Ec_2Earithmetic_2E_2B V7t) V0t0))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2EPSUBSET_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (V0m1_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0m1_2E0))) (= (_let_1 ((c_2Eoption_2EOPTION__CHOICE_2E2 _let_2) (_let_1 c_2Eoption_2ENONE_2E0))) _let_2)))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V2s3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Estring_2Estring__lt V0s1))) (=> (and (_let_1 V1s2) ((mono_2Ec_2Estring_2Estring__lt V1s2) V2s3)) (_let_1 V2s3)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0g_2E0 u) (V1f_2E0 u) (V2m_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V0g_2E0))) (let ((_let_3 ((s A_27c) V2m_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27c) _let_4)) V1f_2E0))) (let ((_let_6 (s _let_1))) (= (_let_6 (((c_2Eoption_2EOPTION__MCOMP_2E3 _let_2) _let_5) _let_3)) (_let_6 ((c_2Eoption_2EOPTION__BIND_2E2 ((s _let_4) ((app_2E2 _let_5) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2Q_2E0 u) (V3P_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27b)) V0y_2E0))) (let ((_let_2 ((s (tyop_2Eoption_2Eoption A_27a)) V1x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V3P_2E0)) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V2Q_2E0)) _let_2))) _let_1))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eoption_2EOPTREL_2E3 (_let_3 V3P_2E0)) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Eoption_2EOPTREL_2E3 (_let_3 V2Q_2E0)) _let_2) _let_1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) (_let_2 c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) c_2Eoption_2ESOME_2E0))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 Bool) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29) (V2 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Eone_2Eone)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V1))) (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0e_2E0 u) (V1f_2E0 u)) (exists ((V2fn_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (and (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27b)) V2fn_2E0)) ((s _let_3) (c_2Eoption_2ESOME_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_1))))))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) V2fn_2E0)) ((s _let_2) c_2Eoption_2ENONE_2E0))) (_let_1 V0e_2E0))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V1x_2E0)))) mono_2Ec_2Ebool_2ET))) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) _let_1)) V0rep_2E0)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27c)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V2f_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) ((s (tyop_2Eoption_2Eoption A_27c)) ((c_2Eoption_2EOPTION__MAP_2E2 _let_3) _let_1)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s (_let_2 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0m1_2E0 u) (V1m2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1m2_2E0))) (let ((_let_4 ((s (tyop_2Eoption_2Eoption A_27b)) V0m1_2E0))) (= (_let_2 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 _let_4) _let_3)) (_let_2 ((c_2Eoption_2EOPTION__BIND_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27b) _let_1)) (c_2Ecombin_2EK_2E1 _let_3)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (= (_let_107 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Emin_2Ebool_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Emin_2Ebool)) (_let_107 c_2Eoption_2ESOME_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Esorting_2ESORTED_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Esorting_2ESORTED_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s (tyop_2Elist_2Elist tyop_2Enum_2Enum)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) V2y_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((s _let_4) V1x_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2)))))))))))) (forall ((V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_3 ((s _let_2) V2y_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((s _let_4) V1x_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_7 ((s ((tyop_2Emin_2Efun A_27b) _let_6)) V0f_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (= (_let_1 (((c_2Eoption_2EOPTION__MAP2_2E3 _let_7) _let_5) _let_3)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_3))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) ((app_2E2 ((s _let_6) ((app_2E2 _let_7) ((s A_27b) (c_2Eoption_2ETHE_2E1 _let_5))))) ((s A_27c) (c_2Eoption_2ETHE_2E1 _let_3))))))) (_let_1 c_2Eoption_2ENONE_2E0))))))))))))))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0Q_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Eoption_2Esome_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)))))) (or (exists ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s _let_3) (c_2Eoption_2ESOME_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_1)))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 c_2Eoption_2ENONE_2E0)))) (forall ((V3x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0v_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0v_2E0))) (= (_let_1 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)) _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) _let_2)))) (forall ((V2x_2E0 u) (V3v_2E0 u) (V4f_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V4f_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1))) (_let_3 V3v_2E0)) _let_2)) (_let_3 ((app_2E2 _let_2) _let_1))))))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (and (forall ((V1x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enumeral__bit_2EiSUC V1x))) (let ((_let_2 (mono_2Ec_2Enumeral__bit_2EFDUB V0f))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB _let_2) _let_1) (_let_2 (_let_2 _let_1)))))) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT2 V3x))) (let ((_let_2 (mono_2Ec_2Enumeral__bit_2EFDUB V0f))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB _let_2) _let_1) (_let_2 (_let_2 _let_1)))))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EBIT1 V2x))) (let ((_let_2 (mono_2Ec_2Enumeral__bit_2EFDUB V0f))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB _let_2) _let_1) (_let_2 (_let_2 _let_1)))))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB (mono_2Ec_2Enumeral__bit_2EFDUB V0f)) mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Earithmetic_2EZERO))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Eone_2Eone)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (= (_let_105 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (_let_105 c_2Elist_2Elist__CASE_2E0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecombin_2EK_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecombin_2EK_2E0)) _let_2)))))))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0Q_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (=> (forall ((V3x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 c_2Eoption_2ENONE_2E0))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s _let_2) (c_2Eoption_2ESOME_2E1 _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Eoption_2Esome_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2EDATATYPE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Ebool_2EDATATYPE_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__NONE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__NONE_2E0)) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0m) (not ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1m2_2E0 u) (V2m1_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (_let_1 V1m2_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_3 V2m1_2E0))) (let ((_let_5 (_let_1 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 _let_4) _let_2)))) (let ((_let_6 (_let_1 c_2Eoption_2ENONE_2E0))) (and (= (or (= _let_4 (_let_3 c_2Eoption_2ENONE_2E0)) (= _let_2 _let_6)) (= _let_5 _let_6)) (= (= _let_5 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y_2E0)))) (exists ((V3x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27b)))) (and (= (_let_2 V1m2_2E0) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y_2E0)))) (= (_let_1 V2m1_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V3x_2E0))))))))))))))))) (and (forall ((V0m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V0m))) (= ((mono_2Ec_2Ebit_2EBIT__REVERSE _let_1) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Enumeral__bit_2EBIT__REV _let_1) mono_2Ec_2Enum_2E0) mono_2Ec_2Earithmetic_2EZERO))))) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL V1n))) (let ((_let_2 (mono_2Ec_2Earithmetic_2ENUMERAL V2m))) (= ((mono_2Ec_2Ebit_2EBIT__REVERSE _let_2) _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (((mono_2Ec_2Enumeral__bit_2EBIT__REV _let_2) _let_1) mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2P Bool)) (let ((_let_1 (not V2P))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (_let_2 c_2Eoption_2ENONE_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1x_2E0))) (let ((_let_6 (_let_2 (c_2Eoption_2ESOME_2E1 _let_5)))) (let ((_let_7 (c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V2P))))) (let ((_let_8 (_let_2 ((_let_7 _let_6) _let_3)))) (let ((_let_9 (_let_4 V0y_2E0))) (let ((_let_10 (_let_2 (c_2Eoption_2ESOME_2E1 _let_9)))) (let ((_let_11 (= _let_5 _let_9))) (let ((_let_12 (_let_2 ((_let_7 _let_3) _let_6)))) (and (= V2P (= _let_12 _let_3)) (= (and _let_11 _let_1) (= _let_12 _let_10)) (= (and _let_11 V2P) (= _let_8 _let_10)) (= (= _let_8 _let_3) _let_1))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Eoption_2EOPTION__MAP2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Eoption_2EOPTION__MAP2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 (_let_3 V0x_2E0))) (let ((_let_5 (_let_1 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1f_2E0)) _let_4)))) (let ((_let_6 (= _let_4 (_let_3 c_2Eoption_2ENONE_2E0)))) (and (= _let_6 (= _let_2 _let_5)) (= _let_6 (= _let_5 _let_2)))))))))) (= mono_2Ec_2Enumeral__bit_2EiSUC mono_2Ec_2Enum_2ESUC) (forall ((A_27a d) (V0opt_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (or (= (_let_1 V0opt_2E0) (_let_1 c_2Eoption_2ENONE_2E0)) (exists ((V1x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 V0opt_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__IGNORE__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (=> (forall ((V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) F0_2E0)) _let_1)) (_let_3 ((c_2Epair_2E_2C_2E2 _let_1) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))))))))) (= (_let_2 (c_2Epred__set_2EGSPEC_2E1 ((s (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool))) F0_2E0))) (_let_2 c_2Epred__set_2EEMPTY_2E0)))))) (forall ((A_27a d)) (and (forall ((V3s_2E0 u) (V4t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (forall ((V5s_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5s_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V3s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 (_let_2 V4t_2E0)) _let_3))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_2 V4t_2E0)) (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V3s_2E0)))))))))) (forall ((V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (forall ((V2s_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2s_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_3) (_let_2 V1t_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0s_2E0)))) (_let_2 V1t_2E0)))))))))) (= (_let_100 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Eone_2Eone)) (_let_100 c_2Eoption_2ESOME_2E0)) (forall ((A_27a d)) (and (forall ((V0a_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Eoption_2Eoption__ABS_2E1 ((s ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone)) (c_2Eoption_2Eoption__REP_2E1 _let_2)))) _let_2)))) (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone)))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Eoption_2Eoption__REP_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2Eoption__ABS_2E1 _let_2)))) _let_2) mono_2Ec_2Ebool_2ET)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ewellorder_2Ewellorder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ewellorder_2Ewellorder_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod _let_3) A_27a))) _let_2))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Estate__transformer_2EEXT_2E1 _let_5)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Estate__transformer_2EEXT_2E0)) _let_5))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (_let_2 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Ellist_2ELDROP_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Ellist_2ELDROP_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d)) (and (forall ((V0m2_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V0m2_2E0))) (= (_let_1 ((c_2Eoption_2EOPTION__CHOICE_2E2 (_let_1 c_2Eoption_2ENONE_2E0)) _let_2)) _let_2)))) (forall ((V1x_2E0 u) (V2m2_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0))))) (= (_let_1 ((c_2Eoption_2EOPTION__CHOICE_2E2 _let_2) (_let_1 V2m2_2E0))) _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 A_27c))) (let ((_let_6 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun _let_2) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E3 _let_4) _let_3) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2EpatternMatches_2EPMATCH__ROW__REDUNDANT_2E0)) _let_4))) _let_3))) X2))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_3 V1x_2E0))) (= (or (and (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)) (= _let_4 (_let_3 c_2Eoption_2ENONE_2E0))) (exists ((V3x0_2E0 u) (V4y0_2E0 u)) (let ((_let_1 ((s A_27a) V3x0_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 ((s A_27b) V4y0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (and (= (_let_5 V2y_2E0) (_let_5 (c_2Eoption_2ESOME_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) V0R_2E0)) _let_1))) _let_3))) (= (_let_2 V1x_2E0) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eoption_2EOPTREL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) _let_4) _let_2))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Eoption_2EOPTREL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTREL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2t_2E0))) (let ((_let_3 ((s A_27a) V0x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_5))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 _let_5) _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1sc_2E0 u) (V2opt_2E0 u) (V3nc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0v_2E0))) (let ((_let_3 (_let_1 V3nc_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (_let_4 V2opt_2E0))) (= (or (and (= _let_3 _let_2) (= _let_5 (_let_4 c_2Eoption_2ENONE_2E0))) (exists ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (s A_27b))) (and (= (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1sc_2E0)) _let_1)) (_let_3 V0v_2E0)) (= (_let_2 V2opt_2E0) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))))) (= (_let_1 (((c_2Eoption_2Eoption__CASE_2E3 _let_5) _let_3) ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1sc_2E0))) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Eoption_2EOPTION__JOIN_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Eoption_2EOPTION__JOIN_2E0)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1g_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eoption_2EIS__SOME_2E1 ((s _let_3) ((c_2Eoption_2EOPTION__BIND_2E2 _let_1) ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V1g_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eoption_2EIS__SOME_2E1 _let_1)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__IGNORE__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2EFINITE_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d)) (and (forall ((V0P_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eoption_2EOPTION__ALL_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V1P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Eoption_2EOPTION__ALL_2E2 _let_2) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_4 A_27b)) (_let_4 A_27c)))) (let ((_let_6 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun _let_1) _let_5)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_7))) _let_3)))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Eoption_2ENONE_2E0)))) (forall ((V1a_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Eoption_2ESOME_2E1 ((s A_27a) V1a_2E0))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V2x_2E0))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V2))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0w2_2E0 u) (V1w1_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)))) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0)))))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27b) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V4y_2E0))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_3 V3x_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_10 (s ((tyop_2Emin_2Efun _let_9) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_9) ((c_2Epair_2E_2C_2E2 _let_7) _let_4))) (_let_10 (c_2Eset__relation_2Estrict_2E1 (_let_10 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V1w1_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_6 (_let_5 _let_7))) (_let_6 (_let_5 _let_4))))) (_let_2 (c_2Eset__relation_2Estrict_2E1 (_let_2 (c_2Ewellorder_2Ewellorder__REP_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V0w2_2E0))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1g_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s (tyop_2Eoption_2Eoption _let_3)) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 ((s (tyop_2Eoption_2Eoption _let_5)) V2f_2E0))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_8 (_let_2 A_27c))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (= (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_8)) ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_9)) ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_10)) (c_2Eoption_2ESOME_2E1 ((s _let_10) c_2Ecombin_2Eo_2E0)))) _let_6))) _let_4))) _let_1)) (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_6) ((s (tyop_2Eoption_2Eoption A_27b)) ((c_2Eoption_2EOPTION__APPLY_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1p_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V1p_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 ((c_2Eoption_2EOPTION__BIND_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V2f_2E0))))) (and (= (exists ((V4x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V4x_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (and (= (_let_4 V1p_2E0) (_let_4 (c_2Eoption_2ESOME_2E1 _let_3))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V2f_2E0)) _let_3)) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y_2E0)))))))))) (= _let_5 (_let_4 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y_2E0))))) (= (= _let_5 (_let_4 c_2Eoption_2ENONE_2E0)) (or (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (and (= (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V2f_2E0)) _let_1)) (_let_4 c_2Eoption_2ENONE_2E0)) (= (_let_2 V1p_2E0) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))))) (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (not (= (_let_1 c_2Eoption_2ENONE_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V0x_2E0))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d)) (and (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 ((s A_27a) V0x_2E0)))))) mono_2Ec_2Ebool_2ET)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)))) mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) (-> Bool Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x1_2E0 u) (V1x2_2E0 u) (V2y1_2E0 u) (V3y2_2E0 u) (V4f1_2E0 u) (V5f2_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (_let_1 V3y2_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_3 V1x2_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))))) (let ((_let_6 (s (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_7 (_let_1 V2y1_2E0))) (let ((_let_8 (_let_3 V0x1_2E0))) (=> (and (= _let_8 _let_4) (= _let_7 _let_2) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 ((s A_27a) V6x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s A_27c))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_8 (s (tyop_2Eoption_2Eoption A_27b)))) (=> (and (= (_let_8 V3y2_2E0) (_let_8 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_7 V1x2_2E0) (_let_7 (c_2Eoption_2ESOME_2E1 _let_2)))) (= (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V4f1_2E0)) _let_2))) _let_1)) (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V5f2_2E0)) _let_2))) _let_1)))))))))))))) (= (_let_6 (((c_2Eoption_2EOPTION__MAP2_2E3 (_let_5 V4f1_2E0)) _let_8) _let_7)) (_let_6 (((c_2Eoption_2EOPTION__MAP2_2E3 (_let_5 V5f2_2E0)) _let_4) _let_2))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EMONOID_2E2 ((s (_let_2 (_let_2 _let_1))) c_2Elist_2EAPPEND_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27a) A_27c)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0v_27_2E0 u) (V1f_27_2E0 u) (V2M_2E0 u) (V3M_27_2E0 u) (V4v_2E0 u) (V5f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V0v_27_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (_let_4 V3M_27_2E0))) (let ((_let_6 (_let_2 V4v_2E0))) (let ((_let_7 (_let_4 V2M_2E0))) (=> (and (= _let_7 _let_5) (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_4 V3M_27_2E0) (_let_4 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V5f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f_27_2E0)) _let_1))))))))) (=> (= _let_5 (_let_4 c_2Eoption_2ENONE_2E0)) (= _let_6 _let_3))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_6) (_let_1 V5f_2E0))) (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_5) _let_3) (_let_1 V1f_27_2E0))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1)))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (= (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_3) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2))))) (= _let_3 _let_2))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27d)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0x_2E0 u) (V1y_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2s_2E0))) (let ((_let_7 (_let_5 ((c_2Epred__set_2EDELETE_2E2 _let_6) _let_2)))) (let ((_let_8 (_let_1 V0x_2E0))) (let ((_let_9 (c_2Epred__set_2EINSERT_2E2 _let_8))) (= (_let_5 ((c_2Epred__set_2EDELETE_2E2 (_let_5 (_let_9 _let_6))) _let_2)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_8))) _let_2))) _let_7) (_let_5 (_let_9 _let_7))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (let ((_let_2 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__BIND_2E0)) _let_5))) _let_3))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((((c_2Earithmetic_2ENRC_2E4 _let_5) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (V0opt1_2E0 u) (V1opt2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V1opt2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_5 (_let_1 V0opt1_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_4 V1opt2_2E0) (_let_4 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V2f1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V3f2_2E0)) _let_1)))))))))) (= (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 (_let_3 V2f1_2E0)) _let_5)) (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 (_let_3 V3f2_2E0)) _let_2)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (not (= (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V0x_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun _let_1) A_27b)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__IGNORE__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (= (exists ((V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V1f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (= (or (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Eoption_2ESOME_2E1 ((s A_27a) V2x_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Eoption_2ENONE_2E0))))) (exists ((V1opt_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1opt_2E0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ebiprefix_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EEncode_2Ebiprefix_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27state d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1s1_2E0 u) (V3r_2E0 u) (V4s3_2E0 u)) (let ((_let_1 ((s A_27state) V4s3_2E0))) (let ((_let_2 ((s A_27b) V1s1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_4 ((s A_27a) V3r_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_3))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27state) _let_5))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_8)) F1_2E0)) _let_2))) _let_4))) _let_1)) (_let_6 ((c_2Epair_2E_2C_2E2 _let_4) ((s _let_3) ((c_2Epair_2E_2C_2E2 _let_2) _let_1)))))))))))))) (=> (forall ((V0f_2E0 u) (V1s1_2E0 u) (V2s2_2E0 u)) (let ((_let_1 ((s A_27state) V2s2_2E0))) (let ((_let_2 (tyop_2Epair_2Eprod A_27a))) (let ((_let_3 (_let_2 A_27state))) (let ((_let_4 (tyop_2Emin_2Efun A_27state))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V0f_2E0))) (let ((_let_7 ((s A_27b) V1s1_2E0))) (let ((_let_8 (_let_2 ((tyop_2Epair_2Eprod A_27b) A_27state)))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun A_27a) _let_9))) (let ((_let_11 (tyop_2Emin_2Efun A_27b))) (let ((_let_12 (s _let_8))) (let ((_let_13 (_let_11 _let_9))) (= (_let_12 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_13)) F0_2E0)) _let_6))) _let_7))) _let_1)) (_let_12 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_7))))) ((s _let_3) ((app_2E2 _let_6) _let_1))))))))))))))))))) (forall ((V0f_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27state))) (let ((_let_3 (_let_2 (_let_1 A_27state)))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27state))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) (_let_2 _let_6)))) (let ((_let_8 (s ((tyop_2Emin_2Efun _let_5) _let_6)))) (= (_let_8 (c_2Estate__transformer_2EWIDEN_2E1 _let_4)) (_let_8 (c_2Epair_2EUNCURRY_2E1 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_4 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 _let_7))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_6))) _let_5))) _let_3))))))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0R_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eoption_2EOPTREL_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1) _let_1)))))))) (= (_let_99 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (_let_99 c_2Epair_2E_2C_2E0)) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (= (forall ((V1opt_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1opt_2E0)))))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Eoption_2ENONE_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Eoption_2ESOME_2E1 ((s A_27a) V2x_2E0)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0y_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (=> (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_2))) _let_3))) (= _let_3 _let_2)))))))) (forall ((V0y_2E0 u)) (let ((_let_1 ((s A_27a) V0y_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_3 (_let_2 (c_2Eoption_2ESOME_2E1 _let_1)))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (and (= (_let_2 (c_2Eoption_2Esome_2E1 (_let_7 ((app_2E2 (_let_6 F0_2E0)) _let_1)))) _let_3) (= (_let_2 (c_2Eoption_2Esome_2E1 (_let_7 ((app_2E2 (_let_6 F1_2E0)) _let_1)))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Eoption__REP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Eoption__REP_2E0)) _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_2) (_let_1 V1t_2E0)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (= (exists ((V3z_2E0 u)) (let ((_let_1 ((s A_27a) V3z_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (and (= (_let_3 V1x_2E0) (_let_3 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_2 V2y_2E0) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_1)))))))) (= (_let_1 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) V1x_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27b) V2y_2E0))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (and (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s A_27b) V0h_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_3 (s (tyop_2Ellist_2Ellist A_27b)))) (= (_let_2 (c_2Ellist_2ELHD_2E1 (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_1) (_let_3 V1t_2E0))))) (_let_2 (c_2Eoption_2ESOME_2E1 _let_1))))))) (= (_let_1 (c_2Ellist_2ELHD_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) c_2Ellist_2ELNIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))) (= mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Emin_2Ebool))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V0P_2E0))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (= (_let_1 (c_2Eoption_2Esome_2E1 _let_4)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_5 tyop_2Emin_2Ebool)) F0_2E0)) _let_4))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Emin_2E_40_2E1 (_let_3 ((app_2E2 ((s (_let_5 _let_2)) F1_2E0)) _let_4))))))) (_let_1 c_2Eoption_2ENONE_2E0))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (and (forall ((V0x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0x_2E0))) (= (_let_2 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Eoption_2ESOME_2E1 _let_3)))) _let_3))))) (= (_let_2 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) c_2Eoption_2ENONE_2E0))) (_let_2 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Ebag_2EEMPTY__BAG_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (s (_let_4 (tyop_2Eoption_2Eoption A_27d))))) (let ((_let_6 (_let_5 V0g_2E0))) (and (= (_let_5 ((c_2Eoption_2EOPTION__MCOMP_2E2 _let_6) ((s (_let_4 (tyop_2Eoption_2Eoption A_27c))) c_2Eoption_2ESOME_2E0))) _let_6) (= (_let_2 ((c_2Eoption_2EOPTION__MCOMP_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) c_2Eoption_2ESOME_2E0)) _let_3)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1m_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V1m_2E0))) (and (= (_let_1 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 ((s (tyop_2Eoption_2Eoption A_27c)) (c_2Eoption_2ESOME_2E1 ((s A_27c) V0v_2E0)))) _let_2)) _let_2) (= (_let_1 ((c_2Eoption_2EOPTION__IGNORE__BIND_2E2 ((s (tyop_2Eoption_2Eoption A_27b)) c_2Eoption_2ENONE_2E0)) _let_2)) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (=> (and (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27a) V2h_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)) (_let_2 ((c_2Ellist_2ELCONS_2E2 _let_3) (_let_2 V3t_2E0)))))))))))) (forall ((V4h_2E0 u) (V5t_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_2 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V4h_2E0)) _let_3))))))))))))) (forall ((V6a0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 ((s _let_1) V6a0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1Q_2E0)) _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V1)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m)) ((mono_2Ec_2Earithmetic_2E_2D V1m) V0n)) ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 ((s A_27a) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EpatternMatches_2EPMATCH__ROW__COND_2E0)) _let_8))) _let_6))) _let_2))) _let_1)))))))))))))))) (forall ((V0 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (= (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 ((s (tyop_2Eoption_2Eoption tyop_2Eone_2Eone)) (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 V0))) V0)) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_1))) ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Epred__set_2ECARD_2E1 _let_3))))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EINJ_2E3 ((s (_let_2 A_27b)) V0f_2E0)) _let_3) _let_1))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1y_2E0))))) (let ((_let_4 (s (tyop_2Eoption_2Eoption _let_1)))) (let ((_let_5 (_let_4 V0x_2E0))) (= (= _let_5 (_let_4 (c_2Eoption_2ESOME_2E1 _let_3))) (= (_let_2 (c_2Eoption_2EOPTION__JOIN_2E1 _let_5)) _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Eoption_2ENONE_2E0))) (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_1 V3x_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_4)) (_let_3 (c_2Eoption_2ESOME_2E1 _let_2))))))))) (forall ((V6x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (not (= (_let_1 c_2Eoption_2ENONE_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V6x_2E0))))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_3))) mono_2Ec_2Ebool_2EF) (forall ((V14x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2e_2E0))) (let ((_let_3 ((s (tyop_2Eoption_2Eoption A_27a)) V14x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__NONE_2E1 _let_3))) (= (_let_1 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) _let_2)))))) (forall ((V15x_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V15x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_1))) (= (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 _let_1) (_let_3 V2e_2E0)) _let_2)) (_let_3 ((app_2E2 _let_2) ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_1)))))))))) (forall ((V16x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V16x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_3))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) (_let_2 V1e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) c_2Eoption_2ESOME_2E0))) _let_3)))))) (forall ((V17v_2E0 u) (V18f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V17v_2E0))) (= (_let_1 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0)) _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V18f_2E0))) _let_2)))) (forall ((V19x_2E0 u) (V20v_2E0 u) (V21f_2E0 u)) (let ((_let_1 ((s A_27a) V19x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V21f_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1))) (_let_3 V20v_2E0)) _let_2)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((V25x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V25x_2E0))) (= (_let_2 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) (c_2Eoption_2ESOME_2E1 _let_3)))) _let_3))))) (= (_let_2 (c_2Eoption_2EOPTION__JOIN_2E1 ((s (tyop_2Eoption_2Eoption _let_1)) c_2Eoption_2ENONE_2E0))) _let_3) (forall ((V24f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_1 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V24f_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((V22f_2E0 u) (V23x_2E0 u)) (let ((_let_1 ((s A_27a) V23x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V22f_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_2) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1)))) (_let_3 (c_2Eoption_2ESOME_2E1 ((s A_27b) ((app_2E2 _let_2) _let_1))))))))) (forall ((V13x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V13x_2E0))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) _let_3) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) c_2Eoption_2ESOME_2E0))) _let_3))))) (forall ((V12x_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V12x_2E0))) (= (_let_2 (((c_2Eoption_2Eoption__CASE_2E3 _let_3) (_let_2 c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun A_27a) _let_1)) c_2Eoption_2ESOME_2E0))) _let_3))))) (forall ((V11x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V11x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2))) (= (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Eoption_2ETHE_2E1 _let_2)))) _let_2))))) (forall ((V10x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V10x_2E0))) (= (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 _let_2)))))))) (forall ((V9x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 V9x_2E0))) (= (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__NONE_2E1 _let_2))))))) (forall ((V8x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 ((s A_27a) V8x_2E0)))))) mono_2Ec_2Ebool_2ET)) (forall ((V7x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (not (= (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V7x_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))) (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (= (_let_1 (c_2Eoption_2ETHE_2E1 ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_2)))) _let_2))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_95 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (_let_95 c_2Ebool_2ECOND_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s _let_9))) (= (_let_12 (((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E3 _let_8) _let_6) _let_4)) (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E0)) _let_8))) _let_6))) _let_4)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_7))) (= (_let_3 (((c_2Eoption_2Eoption__CASE_2E3 _let_6) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Eoption_2Eoption__CASE_2E0)) _let_6))) _let_4))) _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINTER_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) A_27c)) ((tyop_2Emin_2Efun (_let_1 A_27b)) (_let_1 A_27c))))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eoption_2ESOME_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eoption_2ESOME_2E0)) _let_3))))))))) (forall ((A_27a d) (V0opt_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (or (exists ((V1x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_1 V0opt_2E0) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0)))))) (= (_let_1 V0opt_2E0) (_let_1 c_2Eoption_2ENONE_2E0))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27b)) V1f_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (= (_let_4 ((c_2Eoption_2EOPTION__MAP_2E2 _let_2) _let_5)) (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_5) (_let_4 c_2Eoption_2ENONE_2E0)) ((s (_let_1 _let_3)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_1))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))))))))) (forall ((A_27a d) (V0xs_2E0 u) (V1r_27_2E0 u) (V2r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Eset__relation_2Eminimal__elements_2E2 (_let_3 V0xs_2E0)))) (let ((_let_5 (_let_1 V1r_27_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (_let_4 _let_5))) (_let_3 (_let_4 _let_2))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_2) ((s (tyop_2Eoption_2Eoption A_27a)) (c_2Eoption_2ESOME_2E1 _let_1)))) (_let_3 (c_2Eoption_2ESOME_2E1 ((s A_27b) ((app_2E2 _let_2) _let_1))))))))) (forall ((V2f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (= (_let_1 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) c_2Eoption_2ENONE_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b))) (c_2Elist_2EUNZIP_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Epred__set_2EREST_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Epred__set_2EREST_2E0)) _let_3))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27c) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_5))) (= (_let_10 (((c_2Eoption_2EOPTION__MCOMP_2E3 _let_7) _let_4) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2EOPTION__MCOMP_2E0)) _let_7))) _let_4))) _let_1)))))))))))))) (= (_let_92 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum)) (_let_92 c_2Elist_2ELIST__TO__SET_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Esome_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Esome_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Eone_2Eone)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Eone_2Eone V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0x_2E0 u) (V1X_2E0 u) (V2P Bool)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 c_2Eoption_2ENONE_2E0))) (let ((_let_3 (_let_1 V1X_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V2P))))) (let ((_let_6 (_let_1 ((_let_5 _let_3) _let_2)))) (let ((_let_7 (_let_1 ((_let_5 _let_2) _let_3)))) (let ((_let_8 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V0x_2E0))))) (let ((_let_9 (= _let_3 _let_8))) (and (= (= _let_6 _let_8) (and _let_9 V2P)) (= (= _let_7 _let_8) (and (not V2P) _let_9)) (= (= _let_7 _let_2) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eoption_2EIS__SOME_2E1 _let_3))) V2P)) (= (=> V2P (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eoption_2EIS__NONE_2E1 _let_3)))) (= _let_6 _let_2))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) V0))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2)))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)))) _let_2))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (A_27c d) (A_27s d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2Estate__transformer_2EEXT_2E2 _let_6) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EEXT_2E0)) _let_6))) _let_3)))))))))))) (forall ((A_27a d) (V0r1_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V1x_2E0)) (_let_3 V2y_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 V0r1_2E0)))))) (forall ((V3r2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (s A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 (_let_3 V1x_2E0)) (_let_3 V2y_2E0)))) (_let_2 (c_2Eset__relation_2Etc_2E1 (_let_2 ((c_2Epred__set_2EUNION_2E2 (_let_2 V0r1_2E0)) (_let_2 V3r2_2E0))))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27c)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V3P_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27a) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V3P_2E0))) (let ((_let_5 ((s A_27b) V0x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_2 _let_7))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_10)) F0_2E0)) _let_5))) _let_4))) _let_1)) (_let_8 ((c_2Epair_2E_2C_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_1) _let_5))) ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0x_2E0 u) (V1b_2E0 u) (V2a_2E0 u) (V3P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V3P_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_4 V0x_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_7 (_let_1 ((tyop_2Epair_2Eprod _let_6) tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (_let_4 V1b_2E0))) (let ((_let_10 ((s A_27a) V2a_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 _let_3) _let_10))) (= _let_9 _let_5)) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2EIN_2E2 ((s _let_6) ((c_2Epair_2E_2C_2E2 _let_10) _let_9))) ((s ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool)) (c_2Epred__set_2EGSPEC_2E1 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_8)) F0_2E0)) _let_5))) _let_3)))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27c) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Eoption_2EOPTION__MAP2_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Eoption_2EOPTION__MAP2_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) A_27b)) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 ((s (_let_2 (_let_2 _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29_29 V0))) V0)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1r mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V1r) V0n) (forall ((V2q mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V2q) V0n)) V1r)) V0n) V1r)))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Eone_2Eone))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Eoption_2Eoption_28tyop_2Eone_2Eone_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Estrict__linear__order_2E2 _let_1) ((s _let_3) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongLinearOrder_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (mono_2Ec_2Elist_2EREVERSE_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EISL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EISL_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (s (_let_2 tyop_2Enum_2Enum)))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0) V1))) (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) ((s (_let_2 _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((s A_27d) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V4n mono_2Etyop_2Enum_2Enum)) (= (F1 V4n) (not (mono_2Ec_2Earithmetic_2EEVEN V4n)))) (=> (forall ((V2n mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2Earithmetic_2EEVEN V2n)) (F0 V2n))) (and (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1m)))) (= ((mono_2Ec_2EEncode_2Eencode__bnum _let_1) V2n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool (F0 V2n)) ((mono_2Ec_2EEncode_2Eencode__bnum ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) ((mono_2Ec_2Earithmetic_2EDIV V2n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((V3m mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EEncode_2Eencode__bnum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V3m))) V4n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool (F1 V4n)) ((mono_2Ec_2EEncode_2Eencode__bnum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3m))) ((mono_2Ec_2Earithmetic_2EDIV V4n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EEncode_2Eencode__bnum mono_2Ec_2Enum_2E0) V0n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool)))))) (forall ((A_27g d) (A_27h d) (X0_2E0 u)) (let ((_let_1 ((s A_27h) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27g) A_27h))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27h) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0)))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27d) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1ls_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Elist_2EALL__DISTINCT_2E1 _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (A_27g d) (A_27h d) (V0P Bool)) (and (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V3z_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27b) A_27a)))) (= (= (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0P))) (_let_4 (c_2Esum_2EINR_2E1 _let_2))) (_let_4 (c_2Esum_2EINL_2E1 ((s A_27b) V2y_2E0))))) (_let_4 (c_2Esum_2EINR_2E1 _let_3))) (and (= _let_3 _let_2) V0P))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27d))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V6z_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27d) A_27c)))) (= (= (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0P))) (_let_4 (c_2Esum_2EINR_2E1 ((s A_27c) V4x_2E0)))) (_let_4 (c_2Esum_2EINL_2E1 _let_2)))) (_let_4 (c_2Esum_2EINL_2E1 _let_3))) (and (= _let_3 _let_2) (not V0P)))))))) (forall ((V10x_2E0 u) (V11y_2E0 u) (V12z_2E0 u)) (let ((_let_1 (s A_27h))) (let ((_let_2 (_let_1 V11y_2E0))) (let ((_let_3 (_let_1 V12z_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27g) A_27h)))) (= (= (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0P))) (_let_4 (c_2Esum_2EINL_2E1 ((s A_27g) V10x_2E0)))) (_let_4 (c_2Esum_2EINR_2E1 _let_2)))) (_let_4 (c_2Esum_2EINR_2E1 _let_3))) (and (= _let_3 _let_2) (not V0P)))))))) (forall ((V7x_2E0 u) (V8y_2E0 u) (V9z_2E0 u)) (let ((_let_1 (s A_27e))) (let ((_let_2 (_let_1 V7x_2E0))) (let ((_let_3 (_let_1 V9z_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27e) A_27f)))) (= (= (_let_4 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0P))) (_let_4 (c_2Esum_2EINL_2E1 _let_2))) (_let_4 (c_2Esum_2EINR_2E1 ((s A_27f) V8y_2E0))))) (_let_4 (c_2Esum_2EINL_2E1 _let_3))) (and (= _let_3 _let_2) V0P))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (=> (and (forall ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINR_2E1 ((s A_27b) V2y_2E0)))))))) (forall ((V1x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINL_2E1 ((s A_27a) V1x_2E0))))))))) (forall ((V3s_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V3s_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardeq_2E2 _let_1) ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) A_27a)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET) ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Emin_2Ebool))))) _let_1))))) (forall ((V1A_2E0 u) (V2B_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V2B_2E0))) (let ((_let_4 (_let_2 V1A_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ecardinal_2Ecardeq_2E2 (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3))) _let_1))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27g d) (A_27h d) (X0_2E0 u)) (let ((_let_1 ((s A_27g) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27g) A_27h))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27g) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EISR_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EISR_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((A_27a d) (A_27b d) (V0v1_2E0 u) (V1v2_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (not (= (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) V1v2_2E0))) (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V0v1_2E0))))))) (forall ((A_27a d) (V0s_2E0 u) (V1M_2E0 u)) (= (exists ((V3x_2E0 u)) (and (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 tyop_2Enum_2Enum)) V1M_2E0)))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 (_let_1 V3x_2E0))))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0)))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (and (= (_let_1 (c_2Elist_2ETL_2E1 _let_2)) _let_2) (forall ((V0h_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (c_2Elist_2ETL_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0h_2E0)) _let_2)))) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u)) (exists ((V2h_2E0 u)) (and (forall ((V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 (s A_27c))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) A_27b))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27c)) V2h_2E0)) ((s _let_3) (c_2Esum_2EINR_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V1g_2E0)) _let_1))))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s A_27c))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) A_27b))) (= (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) A_27c)) V2h_2E0)) ((s _let_3) (c_2Esum_2EINL_2E1 _let_1)))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0)) _let_1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (= (((mono_2Ec_2Ebit_2EBITS (mono_2Ec_2Ebit_2ELOG2 V0n)) mono_2Ec_2Enum_2E0) V0n) V0n))) (forall ((A_27g d) (A_27h d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27g) A_27h))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0x) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) V1y) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Ebit_2ELOG2 V0x)) (mono_2Ec_2Ebit_2ELOG2 V1y))))) (forall ((A_27e d) (A_27f d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27e) A_27f))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1y_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 ((s A_27b) V1y_2E0)))))))) (forall ((V0x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 ((s A_27a) V0x_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3E V0m))) (= (and ((mono_2Ec_2Earithmetic_2E_3E ((mono_2Ec_2Earithmetic_2E_2B V0m) V2p)) V1n) (_let_1 mono_2Ec_2Enum_2E0)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))))) (let ((_let_2 (_let_1 V1r_2E0))) (= (= (_let_1 (c_2Esum_2EREP__sum_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EABS__sum_2E1 _let_2)))) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EIS__SUM__REP_2E1 _let_2))))))) (forall ((V0a_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 (_let_1 V0a_2E0))) (= (_let_1 (c_2Esum_2EABS__sum_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (c_2Esum_2EREP__sum_2E1 _let_2)))) _let_2)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_7))) (= (_let_10 (((c_2Esum_2E_2B_2B_2E3 _let_6) _let_4) _let_2)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Esum_2E_2B_2B_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 (_let_1 V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISR_2E1 _let_2))) (= (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) (c_2Esum_2EOUTR_2E1 _let_2)))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0f_2E0 u) (V1g_2E0 u) (V2a_2E0 u)) (let ((_let_1 ((s A_27a) V2a_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0))) (let ((_let_3 (s ((tyop_2Esum_2Esum A_27c) A_27d)))) (= (_let_3 (((c_2Esum_2E_2B_2B_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V1g_2E0)) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_1)))) (_let_3 (c_2Esum_2EINL_2E1 ((s A_27c) ((app_2E2 _let_2) _let_1))))))))) (forall ((V3f_2E0 u) (V4g_2E0 u) (V5b_2E0 u)) (let ((_let_1 ((s A_27b) V5b_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4g_2E0))) (let ((_let_3 (s ((tyop_2Esum_2Esum A_27c) A_27d)))) (= (_let_3 (((c_2Esum_2E_2B_2B_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V3f_2E0)) _let_2) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_1)))) (_let_3 (c_2Esum_2EINR_2E1 ((s A_27d) ((app_2E2 _let_2) _let_1))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (= (_let_4 (c_2Esum_2EINR_2E1 _let_3)) (_let_4 (c_2Esum_2EINR_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2EfixedPoint_2Egfp_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2EfixedPoint_2Egfp_2E0)) _let_3)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d)) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EIS__SUM__REP_2E0)) ((s ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)) V0rep_2E0))))))) (forall ((A_27a d) (V0s_2E0 u) (V1a0_2E0 u) (V2a_2E0 u) (V3f0_2E0 u) (V4f_2E0 u)) (let ((_let_1 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (let ((_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 (_let_6 (c_2Ecombin_2EK_2E1 (_let_5 V4f_2E0)))))) (let ((_let_8 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E2 (_let_6 (c_2Ecombin_2EK_2E1 (_let_5 V3f0_2E0)))))) (let ((_let_9 (s A_27a))) (let ((_let_10 (s _let_3))) (let ((_let_11 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E2 (_let_10 (c_2Ecombin_2EK_2E1 (_let_9 V2a_2E0)))))) (let ((_let_12 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E2 (_let_10 (c_2Ecombin_2EK_2E1 (_let_9 V1a0_2E0)))))) (= (_let_1 (_let_12 (_let_1 (_let_11 (_let_1 (_let_8 (_let_1 (_let_7 (_let_1 V0s_2E0))))))))) (_let_1 (_let_12 (_let_1 (_let_11 (_let_1 (_let_8 (_let_1 (_let_7 (_let_1 c_2Ebool_2EARB_2E0))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Esum_2ESUM__ALL_2E3 _let_2) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((V3P_2E0 u) (V4Q_2E0 u) (V5y_2E0 u)) (let ((_let_1 ((s A_27b) V5y_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V4Q_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Esum_2ESUM__ALL_2E3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3P_2E0)) _let_2) ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27d) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecardinal_2Ecardeq_2E2 _let_2) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) c_2Ecardinal_2Ecardeq_2E0)) _let_2))) X1))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V1b Bool) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0e_2E0))) (let ((_let_3 (_let_1 V3y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_5 _let_8)) F0_2E0)) _let_2))) (_let_4 (i_mono_2Etyop_2Emin_2Ebool V1b))))) ((s A_27a) V2x_2E0)))) _let_3))) (and (= _let_3 _let_2) (not V1b)))))))))))) (forall ((V0e_2E0 u)) (let ((_let_1 ((s A_27b) V0e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) (_let_2 tyop_2Emin_2Ebool))))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_4 (c_2Esum_2EINR_2E1 _let_1)) (_let_4 (c_2Esum_2EABS__sum_2E1 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) F0_2E0)) _let_1)))))))))))) (forall ((A_27a d) (V0ll_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V0ll_2E0))) (= (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_2) (_let_1 c_2Ellist_2ELNIL_2E0))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1g_2E0 u) (V2h_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0f_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) A_27c))) (let ((_let_7 ((s _let_6) V2h_2E0))) (let ((_let_8 (c_2Ecombin_2Eo_2E2 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 A_27c))) (let ((_let_11 (s _let_10))) (let ((_let_12 (_let_11 V1g_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_14 ((tyop_2Emin_2Efun _let_10) _let_13))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_14)) F0_2E0)) _let_4))) _let_12))) _let_7))) (and (= (_let_11 (_let_8 ((s (_let_9 _let_5)) c_2Esum_2EINR_2E0))) _let_12) (= (_let_3 (_let_8 ((s (_let_1 _let_5)) c_2Esum_2EINL_2E0))) _let_4)))))))))))))))))) (forall ((V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_3) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) ((s _let_2) V0f_2E0)))) ((s _let_1) V1g_2E0))))))))))))) (= (_let_90 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EEncode_2Ewf__encoder_2Emono_2Etyop_2Eone_2Eone)) (_let_90 c_2EEncode_2Ewf__encoder_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0x_2E0 u) (V1f_2E0 u) (V2f1_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1f_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (((c_2Esum_2Esum__CASE_2E3 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_1))) _let_2) ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V2f1_2E0))) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((V3y_2E0 u) (V4f_2E0 u) (V5f1_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) V5f1_2E0))) (let ((_let_3 (s A_27c))) (= (_let_3 (((c_2Esum_2Esum__CASE_2E3 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_1))) ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V4f_2E0)) _let_2)) (_let_3 ((app_2E2 _let_2) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (not (= (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V0x_2E0))) (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) V1y_2E0))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 (_let_1 V0x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 _let_2))) (= (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) (c_2Esum_2EOUTL_2E1 _let_2)))) _let_2))))) (forall ((A_27state d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_1))) (= (_let_5 (c_2Estate__transformer_2EFOR_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_1)) c_2Estate__transformer_2EFOR_2E0)) _let_4))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISL_2E1 _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISR_2E1 _let_1)))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) F0_2E0)) ((s _let_1) V1f_2E0)))) ((s A_27a) V2x_2E0)))) (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V2x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1f_2E0)) ((s A_27b) V3y_2E0)))))))))) (forall ((V0ls_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEVERY_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) F0_2E0)) ((s _let_1) V1f_2E0)))) ((s (tyop_2Elist_2Elist A_27a)) V0ls_2E0)))) (exists ((V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (_let_1 V0ls_2E0) (_let_1 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1f_2E0)) ((s (tyop_2Elist_2Elist A_27b)) V4l_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_4 (_let_1 V1x_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Esum_2EINL_2E1 _let_4)) (_let_3 (c_2Esum_2EINL_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0sum_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) A_27c))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27c) ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) V0sum_2E0)) ((s _let_3) c_2Esum_2EINL_2E0)))) ((s _let_2) c_2Esum_2EINR_2E0))))))))))) (forall ((A_27e d) (A_27f d) (X0_2E0 u)) (let ((_let_1 ((s A_27f) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27e) A_27f))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27f) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Esum_2EIS__SUM__REP_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Esum_2EIS__SUM__REP_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 A_27d)) V1g_2E0))) (let ((_let_3 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27c)) V0f_2E0))) (let ((_let_6 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V2z_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 (((c_2Esum_2E_2B_2B_2E3 _let_5) _let_2) _let_6)) (_let_7 (((c_2Esum_2Esum__CASE_2E3 _let_6) ((s (_let_4 _let_3)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) c_2Esum_2EINL_2E0)) _let_5))) ((s (_let_1 _let_3)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_3)) c_2Esum_2EINR_2E0)) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0ss_2E0 u)) (or (exists ((V2y_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_1 V0ss_2E0) (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) V2y_2E0)))))) (exists ((V1x_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_1 V0ss_2E0) (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V1x_2E0)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enumeral_2EiZ V0x) V0x)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Esum_2E_2B_2B_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Ecombin_2EI_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0))) (_let_2 c_2Ecombin_2EI_2E0))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISL_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISR_2E1 _let_1))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27c d) (A_27d d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27d) A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 ((s (_let_2 (_let_2 (_let_2 (_let_2 _let_1))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0)))) (= (_let_87 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EEncode_2Ebiprefix_2Emono_2Etyop_2Emin_2Ebool)) (_let_87 c_2EEncode_2Ebiprefix_2E0)) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t0 mono_2Etyop_2Enum_2Enum)) (= (forall ((V2t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V2t) V1t0) (V0a V2t))) ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V0a) V1t0))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Esum_2EOUTL_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Esum_2EOUTL_2E0)) _let_2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Esum_2EREP__sum_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Esum_2EREP__sum_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (A_27c d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s A_27a) X1_2E0))) (let ((_let_5 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) _let_6))) (= (_let_2 (((c_2Efcp_2E_3A_2B_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7)) c_2Efcp_2E_3A_2B_2E0)) _let_5))) _let_4))) _let_3))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2EfixedPoint_2Efnsum_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EfixedPoint_2Efnsum_2E0)) _let_4))) _let_3)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Esum_2E_2B_2B_2E2 _let_4) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) c_2Esum_2E_2B_2B_2E0)) _let_4))) _let_2)))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (((mono_2Ec_2Ebit_2EBITS V0h) V1l) V2n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV V2n) (_let_1 V1l))) (_let_1 ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0h)) V1l)))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (exists ((V1v1_2E0 u) (V2v2_2E0 u)) (or (forall ((V6x Bool) (V7x_27_2E0 u) (V8x_27_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V8x_27_27_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (= (and (not V6x) (= _let_2 (_let_1 V2v2_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_5)) V0f_2E0)) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V6x))))) ((s A_27a) V7x_27_2E0)))) _let_2)))))))))) (forall ((V3x Bool) (V4x_27_2E0 u) (V5x_27_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_27_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_4) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_5)) V0f_2E0)) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V3x))))) _let_2))) ((s A_27b) V5x_27_27_2E0)))) (and (= _let_2 (_let_1 V1v1_2E0)) V3x)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EIS__SUM__REP_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0f_2E0)))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V1b Bool) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0e_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7))) (= (and V1b (= _let_2 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F0_2E0)) _let_4))) (_let_3 (i_mono_2Etyop_2Emin_2Ebool V1b))))) _let_2))) ((s A_27b) V3y_2E0)))))))))))))) (forall ((V0e_2E0 u)) (let ((_let_1 ((s A_27a) V0e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (_let_4 (c_2Esum_2EINL_2E1 _let_1)) (_let_4 (c_2Esum_2EABS__sum_2E1 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) F0_2E0)) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecardinal_2Ecardleq_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecardinal_2Ecardleq_2E0)) _let_4))) _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27c d) (A_27d d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 mono_2Etyop_2Estring_2Echar) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0) V1))) (_let_2 ((c_2Epair_2E_2C_2E2 ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0) V1))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (= (_let_4 (c_2Esum_2EINL_2E1 _let_3)) (_let_4 (c_2Esum_2EINL_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((V2y_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (= (= (_let_4 (c_2Esum_2EINR_2E1 _let_3)) (_let_4 (c_2Esum_2EINR_2E1 _let_2))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u) (V2r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2r_2E0))) (let ((_let_3 ((s A_27b) V0y_2E0))) (let ((_let_4 ((s A_27a) V1x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Eset__relation_2Ereln__to__rel_2E3 _let_2) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Esum_2EOUTR_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Esum_2EOUTR_2E0)) _let_2))))))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 V1b1_2E0)) (_let_1 V0b2_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (s tyop_2Enum_2Enum))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 (_let_2 V1b1_2E0)) _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 (_let_2 V0b2_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_1))) mono_2Ec_2Enum_2E0) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_1)))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 ((s (_let_1 A_27b)) V0f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_5 ((s (_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) V1m_2E0))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2EerrorStateMonad_2EMMAP_2E2 _let_2) _let_5)) (_let_6 ((c_2EerrorStateMonad_2EBIND_2E2 _let_5) ((s (_let_1 _let_4)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2EerrorStateMonad_2EUNIT_2E0)) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1))))))))) (forall ((A_27e d) (A_27f d) (X0_2E0 u)) (let ((_let_1 ((s A_27e) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27e) A_27f))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27e) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (= (_let_85 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (_let_85 c_2Eoption_2ESOME_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27s d) (V0MM_2E0 u) (V1s_2E0 u)) (let ((_let_1 ((s A_27s) V1s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27s))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s (_let_2 _let_3)) V0MM_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2EreaderMonad_2EJOIN_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_1))) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_7 (s _let_3))) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((c_2EEncode_2Eencode__list_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Eencode__list_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (or (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINL_2E1 ((s A_27a) V2x_2E0)))))))) (exists ((V3y_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINR_2E1 ((s A_27b) V3y_2E0))))))))) (exists ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1s_2E0)))))))) (forall ((F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V6t mono_2Etyop_2Enum_2Enum)) (= (F1 V6t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V4t)) ((F7 V1a) V4t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V17t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V17t)) ((F6 V0b) V17t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V13t mono_2Etyop_2Enum_2Enum)) (= ((F4 V1a) V13t) (not (V1a V13t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= ((F3 V0b) V10t) (not (V0b V10t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (or (V0b V18t) (V1a V18t)) (((F9 V1a) V0b) V18t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V15t mono_2Etyop_2Enum_2Enum)) (= (((F5 V1a) V0b) V15t) (or (V1a V15t) (V0b V15t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V11t mono_2Etyop_2Enum_2Enum)) (= (((F8 V1a) V0b) V11t) (=> (V1a V11t) (V0b V11t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V8t) (=> (V1a V8t) (V0b V8t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a) V5x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN F1) V1a) V5x))) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) V16x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F6 V0b)) ((F9 V1a) V0b)) V16x))) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V14x) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN V0b) ((F5 V1a) V0b)) V14x)))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V12x) (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F4 V1a)) V0b) V12x)))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN (F3 V0b)) ((F8 V1a) V0b)) V9x)) (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b) V9x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b) V7x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V0b) ((F2 V1a) V0b)) V7x))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN F0) (F7 V1a)) V2x)) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V2x)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Esum_2EABS__sum_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Esum_2EABS__sum_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0m))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1n))) _let_2)))) (_let_5 ((c_2Elist_2EEL_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2EDATATYPE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) c_2Ebool_2EDATATYPE_2E0)) _let_1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_2))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0v1_2E0 u) (V1v2_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (not (= (_let_1 (c_2Esum_2EINR_2E1 ((s A_27b) V1v2_2E0))) (_let_1 (c_2Esum_2EINL_2E1 ((s A_27a) V0v1_2E0))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1s_27_2E0 u) (V2P_2E0 u) (V3P_27_2E0 u) (V4Q_2E0 u) (V5Q_27_2E0 u)) (let ((_let_1 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 (_let_1 V1s_27_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V0s_2E0))) (=> (and (= _let_6 _let_2) (forall ((V7b_2E0 u)) (let ((_let_1 ((s A_27b) V7b_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (= (_let_4 V1s_27_2E0) (_let_4 (c_2Esum_2EINR_2E1 _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V4Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V5Q_27_2E0)) _let_1)))))))))) (forall ((V6a_2E0 u)) (let ((_let_1 ((s A_27a) V6a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (= (_let_4 V1s_27_2E0) (_let_4 (c_2Esum_2EINL_2E1 _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1))))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Esum_2ESUM__ALL_2E3 (_let_4 V2P_2E0)) (_let_3 V4Q_2E0)) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Esum_2ESUM__ALL_2E3 (_let_4 V3P_27_2E0)) (_let_3 V5Q_27_2E0)) _let_2)))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (((mono_2Ec_2Ebit_2ESLICE V0h) V1l) V2n)) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enum_2ESUC V0h)))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1Q_27_2E0 u) (V2Q_2E0 u) (V3P_27_2E0 u) (V4P_2E0 u)) (let ((_let_1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V6y_2E0 u)) (let ((_let_1 ((s A_27b) V6y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_27_2E0)) _let_1)))))))) (forall ((V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V4P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V3P_27_2E0)) _let_1))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Esum_2ESUM__ALL_2E3 (_let_3 V4P_2E0)) (_let_2 V2Q_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Esum_2ESUM__ALL_2E3 (_let_3 V3P_27_2E0)) (_let_2 V1Q_27_2E0)) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X2_2E0))) (let ((_let_6 (_let_4 X1_2E0))) (let ((_let_7 (tyop_2Efcp_2Ebit1 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_10 _let_11))) (= (_let_1 ((((c_2Efcp_2Ebit1__CASE_2E4 _let_8) _let_6) _let_5) _let_2)) (_let_1 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) c_2Efcp_2Ebit1__CASE_2E0)) _let_8))) _let_6))) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (V0ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_4 (c_2Elist_2ELAST_2E1 _let_2)) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))))) _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27c) A_27d))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_1))) (= (_let_10 (((c_2Esum_2Esum__CASE_2E3 _let_7) _let_5) _let_3)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Esum_2Esum__CASE_2E0)) _let_7))) _let_5))) _let_3)))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0L_2E0 u) (V1i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0L_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_4 (s A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (= (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_2))) _let_3)) (_let_4 ((c_2Elist_2EEL_2E2 _let_3) _let_2))))))))) (forall ((V0L_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0L_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_4 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (= (_let_4 (c_2Efcp_2EL2V_2E1 _let_2)) (_let_4 (c_2Efcp_2EFCP_2E1 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) F0_2E0)) _let_2)))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((s A_27d) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27d) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_2)) c_2Esum_2EINL_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2EDecode_2Eenc2dec_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EDecode_2Eenc2dec_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1xs_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 (_let_1 (c_2Elist_2EFRONT_2E1 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) _let_2))))))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27b) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2Efcp__index_2E0)) _let_3))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Esum_2EOUTR_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 _let_2)))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 ((tyop_2Emin_2Efun _let_2) _let_2))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (let ((_let_2 (mono_2Ec_2Earithmetic_2EBIT1 V1m))) (let ((_let_3 (mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Earithmetic_2EBIT2 V0n)))) (let ((_let_4 ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m))) (let ((_let_5 (mono_2Ec_2Earithmetic_2EBIT2 V1m))) (and (= (_let_3 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Ebool_2EF) (= (_let_1 _let_2) _let_4) (= (_let_1 _let_5) _let_4) (= (_let_3 _let_5) _let_4) (= (_let_3 _let_2) (not ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n))) (= (_let_1 mono_2Ec_2Earithmetic_2EZERO) mono_2Ec_2Ebool_2EF) (= ((mono_2Ec_2Earithmetic_2E_3C_3D mono_2Ec_2Earithmetic_2EZERO) V0n) mono_2Ec_2Ebool_2ET)))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Eoption_2ESOME_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2Eoption_2ESOME_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V0x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISR_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINR_2E1 ((s A_27b) V0x_2E0))))))) (forall ((V1y_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esum_2EISR_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 ((s A_27a) V1y_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun (_let_2 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)))))) (let ((_let_4 (_let_3 _let_1))) (let ((_let_5 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_5) _let_4))) (let ((_let_10 (s _let_4))) (= (_let_10 ((c_2Erelation_2EWFREC_2E2 _let_8) _let_6)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) c_2Erelation_2EWFREC_2E0)) _let_8))) _let_6)))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBIT V1i) ((mono_2Ec_2Earithmetic_2EDIV V2a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2B V1i) V0n)) V2a))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Esum_2ESUM__ALL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Esum_2ESUM__ALL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (= V0m V1n) (not ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Esum_2Esum A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Esum_2EINR_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Esum_2EINR_2E0)) _let_1))))))) (forall ((A_27a d) (V0X_2E0 u) (V1Y_2E0 u) (V2Y_27_2E0 u) (V3Z_2E0 u) (V4W_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2Y_27_2E0))) (let ((_let_3 (_let_1 V4W_2E0))) (let ((_let_4 (c_2Ebag_2EBAG__DIFF_2E2 (_let_1 V3Z_2E0)))) (let ((_let_5 (_let_1 V1Y_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__DIFF_2E2 (_let_1 V0X_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 _let_5))) (_let_1 (_let_4 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebag_2ESUB__BAG_2E2 (_let_1 (_let_6 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_2))))) (_let_1 (_let_4 (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2z_2E0 u)) (let ((_let_1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V2z_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V1g_2E0))) (let ((_let_3 (s ((tyop_2Esum_2Esum A_27c) A_27d)))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V0f_2E0))) (= (_let_3 (((c_2Esum_2E_2B_2B_2E3 _let_4) _let_2) _let_1)) (_let_3 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Esum_2EISL_2E1 _let_1))) (_let_3 (c_2Esum_2EINL_2E1 ((s A_27c) ((app_2E2 _let_4) ((s A_27a) (c_2Esum_2EOUTL_2E1 _let_1))))))) (_let_3 (c_2Esum_2EINR_2E1 ((s A_27d) ((app_2E2 _let_2) ((s A_27b) (c_2Esum_2EOUTR_2E1 _let_1)))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (= (_let_1 (c_2Ebag_2EBAG__CHOICE_2E1 (_let_3 ((c_2Ebag_2EBAG__INSERT_2E2 _let_2) (_let_3 c_2Ebag_2EEMPTY__BAG_2E0))))) _let_2))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f1_27_2E0 u) (V1f_27_2E0 u) (V2M_2E0 u) (V3M_27_2E0 u) (V4f_2E0 u) (V5f1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27c)))) (let ((_let_3 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_4 (_let_3 V3M_27_2E0))) (let ((_let_5 (s A_27c))) (let ((_let_6 (_let_3 V2M_2E0))) (=> (and (forall ((V7y_2E0 u)) (let ((_let_1 ((s A_27b) V7y_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_3 (s A_27c))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (= (_let_4 V3M_27_2E0) (_let_4 (c_2Esum_2EINR_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V5f1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V0f1_27_2E0)) _let_1))))))))) (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27c)))) (let ((_let_3 (s A_27c))) (let ((_let_4 (s ((tyop_2Esum_2Esum A_27a) A_27b)))) (=> (= (_let_4 V3M_27_2E0) (_let_4 (c_2Esum_2EINL_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V4f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f_27_2E0)) _let_1))))))))) (= _let_6 _let_4)) (= (_let_5 (((c_2Esum_2Esum__CASE_2E3 _let_6) (_let_2 V4f_2E0)) (_let_1 V5f1_2E0))) (_let_5 (((c_2Esum_2Esum__CASE_2E3 _let_4) (_let_2 V1f_27_2E0)) (_let_1 V0f1_27_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (V0f1_27_2E0 u) (V1f_27_2E0 u) (V2M_2E0 u) (V3M_27_2E0 u) (V4f_2E0 u) (V5f1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (s (tyop_2Efcp_2Ebit0 A_27a)))) (let ((_let_3 (_let_2 V3M_27_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_2 V2M_2E0))) (=> (and (forall ((V7a_2E0 u)) (let ((_let_1 ((s A_27a) V7a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Efcp_2Ebit0 A_27a)))) (=> (= (_let_4 V3M_27_2E0) (_let_4 (c_2Efcp_2EBIT0B_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V5f1_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V0f1_27_2E0)) _let_1))))))))) (forall ((V6a_2E0 u)) (let ((_let_1 ((s A_27a) V6a_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s (tyop_2Efcp_2Ebit0 A_27a)))) (=> (= (_let_4 V3M_27_2E0) (_let_4 (c_2Efcp_2EBIT0A_2E1 _let_1))) (= (_let_3 ((app_2E2 (_let_2 V4f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1f_27_2E0)) _let_1))))))))) (= _let_5 _let_3)) (= (_let_4 (((c_2Efcp_2Ebit0__CASE_2E3 _let_5) (_let_1 V4f_2E0)) (_let_1 V5f1_2E0))) (_let_4 (((c_2Efcp_2Ebit0__CASE_2E3 _let_3) (_let_1 V1f_27_2E0)) (_let_1 V0f1_27_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2EerrorStateMonad_2EMMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2Einv_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2Einv_2E0)) _let_4)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1))))))) (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V4y_2E0))) (let ((_let_11 (_let_6 V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_11) _let_10) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_11) _let_3))) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2))))))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2ELinearOrder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EOrder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etrichotomous_2E1 _let_2))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 V0R_2E0))))) (= (_let_2 (c_2Erelation_2ERC_2E1 _let_3)) _let_3))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2ESN_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2ESN_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_4 ((s (_let_1 A_27a)) V1f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_5 _let_3)) ((c_2Epred__set_2ELINV__OPT_2E2 _let_4) _let_2))) ((s (_let_5 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_4) _let_2))) ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 _let_3)) c_2Eoption_2ESOME_2E0)) _let_2))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V1x_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_2) (_let_1 V2z_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2z_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0w1_2E0 u) (V1w2_2E0 u)) (= (exists ((V2x_2E0 u)) (let ((_let_1 (s (tyop_2Ewellorder_2Ewellorder A_27b)))) (let ((_let_2 (_let_1 V1w2_2E0))) (let ((_let_3 ((s A_27b) V2x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ewellorder_2Eorderiso_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)) (_let_1 ((c_2Ewellorder_2Ewobound_2E2 _let_3) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ewellorder_2Eorderlt_2E2 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V0w1_2E0)) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V1w2_2E0)))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Epred__set_2EUNION_2E3 _let_5) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epred__set_2EUNION_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Erelation_2Einv_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2Einv_2E0)) _let_4)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum)) (= ((F0 V0n) V1i) ((mono_2Ec_2Ebit_2EBIT V1i) V0n))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOWEST__SET__BIT V0n) (mono_2Ec_2Ewhile_2ELEAST (F0 V0n)))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u)) (= (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2ERDOM_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1x_2E0)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) (_let_1 V1x_2E0)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V2y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V3z_2E0))))) (exists ((V4u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V3z_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V2y_2E0)) _let_2))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWCR_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 V1t_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EINTER_2E3 _let_2) _let_6) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ETC_2E1 _let_3)) _let_3)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Erelation_2Einv_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2Einv_2E0)) _let_4)))))))))) (forall ((A_27g d) (A_27h d) (A_27k d) (V0R1_2E0 u) (V1R2_2E0 u) (V2x_2E0 u) (V3z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27h))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Erelation_2EO_2E4 ((s (_let_1 ((tyop_2Emin_2Efun A_27k) tyop_2Emin_2Ebool))) V0R1_2E0)) ((s ((tyop_2Emin_2Efun A_27g) (_let_1 tyop_2Emin_2Ebool))) V1R2_2E0)) ((s A_27g) V2x_2E0)) ((s A_27k) V3z_2E0)))) (exists ((V4y_2E0 u)) (let ((_let_1 ((s A_27h) V4y_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27k) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27h))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27g) _let_5)) V1R2_2E0)) ((s A_27g) V2x_2E0)))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_2) ((app_2E2 ((s (_let_3 _let_2)) V0R1_2E0)) _let_1))) ((s A_27k) V3z_2E0)))))))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEVERY_2E2 _let_4) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EEXISTS_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))))))))))))) (= (_let_81 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Enum_2Enum)) (_let_81 c_2Emin_2E_40_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (= V0x mono_2Ec_2Enum_2E0) (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V0x))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0R_2E0))) (= (_let_3 (c_2Erelation_2Einv_2E1 ((s (_let_1 (_let_2 tyop_2Emin_2Ebool))) (c_2Erelation_2Einv_2E1 _let_4)))) _let_4)))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erelation_2ERSUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erelation_2ERSUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0a_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V2Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V4x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) _let_8))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) (_let_1 V0a_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2Q_2E0)) _let_2)))))))))))) (forall ((V6b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ETC_2E3 ((s (_let_3 _let_4)) V1R_2E0)) (_let_1 V0a_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) V2Q_2E0)) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27d)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27e) A_27b)) V5rep2_2E0)))) (forall ((V6R3_2E0 u) (V7abs3_2E0 u) (V8rep3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V6R3_2E0)) ((s (_let_1 A_27f)) V7abs3_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)))) (forall ((V9f_2E0 u) (V10x_2E0 u) (V11y_2E0 u)) (let ((_let_1 ((s A_27d) V11y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 ((s A_27e) V10x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27e))) (let ((_let_5 (_let_4 A_27f))) (let ((_let_6 ((s (_let_2 _let_5)) V9f_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 A_27c))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 (s A_27f))) (= (_let_10 (((c_2Ecombin_2EC_2E3 _let_6) _let_3) _let_1)) (_let_10 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) A_27f)) V7abs3_2E0)) ((s A_27c) (((c_2Ecombin_2EC_2E3 ((s (_let_9 _let_8)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_9 A_27d)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun _let_5) _let_8)) ((c_2Equotient_2E_2D_2D_3E_2E2 ((s (_let_7 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)))) _let_6))) ((s A_27b) ((app_2E2 ((s (_let_4 A_27b)) V5rep2_2E0)) _let_3))) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2rep1_2E0)) _let_1))))))))))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))) (exists ((V3u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 _let_2) (_let_1 V2y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V1x_2E0)) _let_2)))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erelation_2ERSUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erelation_2ERSUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Efcp_2Efinite__image A_27b)) A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Efcp_2Edest__cart_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Efcp_2Edest__cart_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2)))))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27z d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27z) A_27z))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EIDEM_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Erelation_2EIDEM_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 tyop_2Enum_2Enum))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_4)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3Q_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2b_2E0)))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V3Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1a_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1a_2E0)) (_let_1 V2b_2E0)))))))) (forall ((A_27a d) (V0b_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (=> (and (forall ((V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) _let_2))) (_let_1 V0b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2Q_2E0)) _let_2))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V2Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) _let_2))) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2)))))))))))))) (forall ((V6a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6a_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ETC_2E3 ((s (_let_3 _let_4)) V1R_2E0)) _let_2) (_let_1 V0b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) V2Q_2E0)) _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1x_2E0)) (_let_1 V2y_2E0)))) (forall ((V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V2y_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V1x_2E0)) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eantisymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWeakOrder_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Erelation_2ERSUBSET_2E0)))))) (forall ((A_27a d) (V0x_2E0 u) (V1R_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0)) _let_1) _let_1)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_4 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((((c_2Erelation_2Einv__image_2E4 _let_9) _let_6) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2Erelation_2Einv__image_2E0)) _let_9))) _let_6))) _let_3))) _let_2)))))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Enumpair_2Enpair V0m) V1n) ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Enumpair_2Etri ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n))) V1n))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eirreflexive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (= (and (= (_let_1 (c_2Epred__set_2EREST_2E1 _let_2)) _let_3) (not (= _let_2 _let_3))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3x_27_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (_let_2 V2x_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_4 _let_7)) V1R_2E0))) (= (_let_1 ((((c_2Erelation_2ERESTRICT_2E4 _let_5) _let_8) _let_6) _let_3)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_3))) _let_6))) (_let_1 ((app_2E2 _let_5) _let_3))) (_let_1 c_2Ebool_2EARB_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERC_2E3 _let_5) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1D_2E0 u) (V2P_2E0 u) (V3M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V4f_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_7 V1D_2E0)) _let_2))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_3 _let_6)) V0R_2E0)) _let_2))) (_let_1 V5x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V2P_2E0)) _let_2))) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V4f_2E0)) _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V1D_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) V2P_2E0)) _let_1))) ((s A_27b) ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V3M_2E0)) (_let_4 V4f_2E0)))) _let_1))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Erelation_2EINDUCTIVE__INVARIANT__ON_2E4 ((s (_let_1 _let_3)) V0R_2E0)) ((s _let_3) V1D_2E0)) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V2P_2E0)) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V3M_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1p_2E0 u)) (let ((_let_1 (s A_27a))) (= (= (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1p_2E0))) (_let_1 V0x_2E0)) (exists ((V2y_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_1 V1p_2E0) (_let_1 ((c_2Epair_2E_2C_2E2 ((s A_27a) V0x_2E0)) ((s A_27b) V2y_2E0))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERC_2E0)) _let_4)))))))) (forall ((A_27a d) (V0p_2E0 u) (V1f_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Epair_2Eprod _let_5) (_let_4 _let_5))) V0p_2E0))) (let ((_let_7 ((c_2Eposet_2Egfp_2E3 _let_6) ((s (_let_4 A_27a)) V1f_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Eposet_2Eposet_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))) (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V1P_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V2x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_8))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) V1P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V4x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 ((s (_let_3 _let_4)) V0R_2E0)) _let_7) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (not (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_3) _let_2)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V4x_2E0)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etotal_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EWFP_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1x_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) mono_2Ec_2Enum_2E0))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EINVOL_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2Einv_2E0))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (= (forall ((V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1l_2E0)))))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Elist_2ENIL_2E0)))) (forall ((V2h_2E0 u) (V3t_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) (_let_2 V3t_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2EEQC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2EEQC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (_let_1 V6y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2EEQC_2E3 (_let_6 V0R_2E0)) _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_2))) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2)))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u) (V9z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9z_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (app_2E2 (_let_8 (_let_7 _let_3))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 V8y_2E0))) (let ((_let_12 (c_2Erelation_2EEQC_2E3 (_let_6 V0R_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 (_let_7 _let_11))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_12 _let_3) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_12 _let_11) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_2))))))))))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V10x_2E0 u) (V11y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V11y_2E0))) (let ((_let_3 (_let_1 V10x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2EEQC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2E_3F_21_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ebool_2E_3F_21_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27b) V3y_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_1 _let_6)) V0R_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((((c_2Erelation_2ERRESTRICT_2E4 _let_7) _let_2) _let_3) _let_5))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_3))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0M_2E0 u) (V1R_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V1R_2E0))) (let ((_let_3 (_let_1 A_27b))) (let ((_let_4 (s _let_3))) (=> (= (_let_4 V2f_2E0) (_let_4 ((c_2Erelation_2EWFREC_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V0M_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 _let_2))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2f_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 ((app_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V0M_2E0)) (_let_4 (((c_2Erelation_2ERESTRICT_2E3 _let_5) ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0)) _let_1))))) _let_1))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 V0R_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 V0R_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_3) ((s (_let_1 A_27a)) V1f_2E0)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Enumpair_2Etri V0n)) (mono_2Ec_2Enumpair_2Etri V1m)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ediamond_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) (_let_1 V1x_2E0)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V3z_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V2y_2E0))))) (exists ((V4u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 V2y_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 V3z_2E0)))) _let_2)))))))))))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESTRORD_2E0))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erelation_2ERSUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erelation_2ERSUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_3 _let_6)) V1R_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 (_let_1 (_let_4 _let_5))))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V4x_2E0))) (let ((_let_6 (c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_1 (_let_4 _let_5))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V1P_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V2x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) V1P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V4x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 ((s (_let_3 _let_4)) V0R_2E0)) _let_7) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Erelation_2EWF_2E1 _let_6))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (not (= _let_3 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 ((s A_27a) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERCOMPL_2E3 _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_3) ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Erelation_2ERCOMPL_2E0)) _let_6))) _let_2))) _let_1)))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (_let_2 V0b1_2E0))) (let ((_let_5 (s (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_5 ((c_2Epred__set_2EDIFF_2E2 (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 _let_4))) (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 _let_3))))) (_let_5 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V1x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2EWFP_2E2 _let_5) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EWFP_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2EEQC_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3)))) _let_4) (= (_let_2 (c_2Erelation_2Einv_2E1 _let_4)) _let_4))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Epred__set_2EGSPEC_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Epred__set_2EGSPEC_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 V0R_2E0))))) (= (_let_2 (c_2Erelation_2ERTC_2E1 _let_3)) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V1R_2E0)) _let_6))) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V3x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V1R_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V2Q_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V2Q_2E0))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V5x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V2Q_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_4 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (_let_1 _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Epred__set_2EIMAGE_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ESTRORD_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ESTRORD_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (_let_4 V0R1_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V1R2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Erelation_2ERINTER_2E4 _let_5) _let_8) _let_2) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 _let_8) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 _let_5) _let_2))) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Ellist_2Ellist A_27a)) (tyop_2Ellist_2Ellist A_27b)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (= (_let_2 ((c_2Ebool_2ELET_2E2 _let_6) _let_3)) (_let_2 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ebool_2ELET_2E0)) _let_6))) _let_3)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1b_2E0 u) (V2f_2E0 u) (V3acc_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3acc_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (_let_4 V1b_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_4 ((c_2Ebag_2EBAG__INSERT_2E2 (_let_6 V0x_2E0)) _let_5)))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_9 ((s (_let_3 _let_8)) V2f_2E0))) (let ((_let_10 (c_2Ebag_2EITBAG_2E3 _let_9))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_5))) (= (_let_1 ((_let_10 _let_7) _let_2)) (_let_1 ((_let_10 (_let_4 (c_2Ebag_2EBAG__REST_2E1 _let_7))) (_let_1 ((app_2E2 ((s _let_8) ((app_2E2 _let_9) (_let_6 (c_2Ebag_2EBAG__CHOICE_2E1 _let_7))))) _let_2))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Epred__set_2EBIGINTER_2E0)) _let_3)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 V0R_2E0))))) (= (_let_2 (c_2Erelation_2EEQC_2E1 _let_3)) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ESTRORD_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESTRORD_2E0)) _let_4)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V2g_2E0))) (let ((_let_4 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_2))) _let_3)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3))) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ERC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 _let_3)) V1f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_8 (s (tyop_2Eoption_2Eoption _let_7)))) (= (_let_8 (c_2Ellist_2ELTL_2E1 ((s _let_7) ((c_2Ellist_2ELUNFOLD_2E2 _let_5) _let_1)))) (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 ((s (_let_6 _let_7)) ((c_2Ecombin_2Eo_2E2 ((s (_let_4 _let_7)) (c_2Ellist_2ELUNFOLD_2E1 _let_5))) ((s (_let_6 A_27b)) c_2Epair_2EFST_2E0)))) ((s _let_3) ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Erel__to__reln_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Erel__to__reln_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1P_2E0 u) (V2M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Erelation_2EINDUCTIVE__INVARIANT_2E3 _let_3) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1P_2E0)) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V2M_2E0))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) V1P_2E0)) _let_1))) ((s A_27b) (((c_2Erelation_2EWFREC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V2M_2E0)) _let_1)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))) _let_3))))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 X1)))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Esymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V2z_2E0))) (let ((_let_4 (c_2Epred__set_2EDIFF_2E2 (_let_1 V0x_2E0)))) (= (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 (_let_4 _let_2))) _let_3)) (_let_1 ((c_2Epred__set_2EDIFF_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWeakOrder_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))) (= _let_3 _let_2)))))))))))))) (forall ((A_27g d) (V0Z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0Z_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongOrder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eirreflexive_2E1 _let_2))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> Bool Bool Bool)) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X3_2E0))) (let ((_let_5 (_let_3 X2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 (_let_6 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 X1)))) (let ((_let_9 (_let_1 _let_2))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_2))) (let ((_let_12 (_let_11 tyop_2Emin_2Ebool))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_13))) (let ((_let_15 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_10) _let_8) _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_15 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_10))) _let_8))) _let_5))) _let_4)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ETC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERC_2E0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27d)) V6f_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s A_27d))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s A_27b) ((c_2Ebool_2Eliteral__case_2E2 ((s (_let_4 A_27b)) (((c_2Equotient_2E_2D_2D_3E_2E3 ((s (_let_4 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)) _let_3))) ((s A_27a) ((app_2E2 ((s (_let_2 A_27a)) V2rep1_2E0)) _let_1))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (_let_4 _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2Ediag_2E3 _let_7) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Ediag_2E0)) _let_7))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (_let_7 ((tyop_2Emin_2Efun _let_1) _let_4)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_11 (_let_7 _let_10))) (= (_let_5 (((c_2Elist_2EFOLDL_2E3 _let_9) _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Elist_2EFOLDL_2E0)) _let_9))) _let_6))) _let_3))))))))))))))) (forall ((A_27z d) (V0f_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EINVOL_2E1 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (forall ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27z))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (let ((_let_4 (_let_1 V1a_2E0))) (= (= _let_4 _let_2) (= (_let_1 (_let_3 _let_4)) (_let_1 (_let_3 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Erelation_2ERDOM_2E1 ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1R_2E0)))))) (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V1R_2E0)) ((s A_27a) V0x_2E0)))) ((s A_27b) V2y_2E0))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool) (V2 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Elist_2EFOLDL_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V2)))))))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Epred__set_2EUNION_2E2 (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2ELinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2ELinearOrder_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0R_2E0 u)) (and (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (c_2Erelation_2ERTC_2E3 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V3y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_9) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_3) _let_2)))))))))))))) (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Erelation_2ERSUBSET_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERSUBSET_2E0)) _let_5))) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEVERY_2E2 (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_3))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEXISTS_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0R3_2E0 u) (V1R2_2E0 u) (V2R1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0R3_2E0))) (let ((_let_3 (_let_1 V1R2_2E0))) (let ((_let_4 (c_2Erelation_2ERUNION_2E2 (_let_1 V2R1_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Erelation_2ERUNION_2E2 _let_3) _let_2)))) (_let_1 ((c_2Erelation_2ERUNION_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u) (V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3Q_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ESC_2E3 (_let_5 V2R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ESC_2E3 (_let_5 V3Q_2E0)) _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ETC_2E0))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2EEQC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Emin_2E_40_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Emin_2E_40_2E0)) _let_3)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 V0R_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (app_2E2 _let_6))) (let ((_let_9 (s _let_5))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_9 (_let_8 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_9 (_let_8 _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ESC_2E3 _let_6) _let_3) _let_2)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27z d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27z))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (= (_let_1 (_let_3 (_let_1 (_let_3 _let_2)))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EINVOL_2E1 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))))) (forall ((A_27a d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_3 _let_6)) V1R_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 (_let_1 (_let_4 _let_5))))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V4x_2E0))) (let ((_let_6 (c_2Erelation_2ESC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_1 (_let_4 _let_5))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((((c_2EpatternMatches_2EIS__REDUNDANT__ROWS__INFO_2E4 ((s A_27a) V0v_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))) c_2Elist_2ENIL_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Emin_2Ebool))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakOrder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EOrder_2E1 _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) F0_2E0)) _let_2)) _let_2)))) (forall ((V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) F0_2E0)) _let_2) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u)) (= (forall ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2Enf_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1x_2E0)))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V5y_2E0))) (let ((_let_11 (_let_6 V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 _let_11) _let_10) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_11) _let_3))) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2))))))))))))))))) (forall ((V7u_2E0 u) (V8v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8v_2E0))) (let ((_let_3 (_let_1 V7u_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (c_2Erelation_2EEQC_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_5 _let_3) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epair_2Epair__CASE_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2Epair__CASE_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_4 A_27b))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 (_let_4 _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s A_27b))) (= (_let_12 ((((c_2Erelation_2ERESTRICT_2E4 _let_9) _let_6) _let_3) _let_2)) (_let_12 ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) c_2Erelation_2ERESTRICT_2E0)) _let_9))) _let_6))) _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etotal_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Esymmetric_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_3))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s _let_3))) (= (_let_10 (((c_2Erelation_2Ethe__fun_2E3 _let_7) _let_5) _let_1)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2Ethe__fun_2E0)) _let_7))) _let_5))) _let_1)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Erelation_2EEMPTY__REL_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Esorting_2EPERM__SINGLE__SWAP_2E0)) _let_4))) _let_3)))))))))))) (= (_let_22 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EI_2Emono_2Etyop_2Emin_2Ebool)) (_let_22 c_2Ecombin_2EI_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V3z_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_3 _let_7)) V1R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_2))) _let_6))) (= (_let_5 ((((c_2Erelation_2ERESTRICT_2E4 _let_4) _let_8) _let_6) _let_2)) (_let_5 ((app_2E2 _let_4) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 ((s A_27a) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 (_let_3 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_7))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Erelation_2ERRESTRICT_2E4 _let_9) _let_5) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Erelation_2ERRESTRICT_2E0)) _let_9))) _let_5))) _let_2))) _let_1)))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakOrder_2E1 _let_2))) (forall ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a_2E0))) (let ((_let_3 (_let_1 V2b_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakLinearOrder_2E1 _let_2)))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V2a V3t)) ((F0 V2a) V3t))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (not (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V1b) V0t0)) (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F0 V2a)) V1b) V0t0))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s (_let_3 _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 ((app_2E2 (_let_5 V1P_2E0)) (_let_1 V4x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V0R_2E0)) _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8y_2E0))) (let ((_let_3 (_let_1 V7x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X3_2E0))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X2_2E0))) (let ((_let_7 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_8 ((s _let_7) X1_2E0))) (let ((_let_9 (_let_1 _let_7))) (let ((_let_10 ((s _let_9) X0_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_7) _let_12))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((((c_2Erelation_2EINDUCTIVE__INVARIANT__ON_2E4 _let_10) _let_8) _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) c_2Erelation_2EINDUCTIVE__INVARIANT__ON_2E0)) _let_10))) _let_8))) _let_6))) _let_4))))))))))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ERTC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eirreflexive_2E1 _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Esymmetric_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ereflexive_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eequivalence_2E1 _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (c_2Elist_2EdropWhile_2E2 _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EEXISTS_2E2 (_let_4 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_5))) _let_3))) (= (_let_1 (_let_6 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2)))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 (_let_6 _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (exists ((V1p_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1p_2E0)))))) (exists ((V2p__1_2E0 u) (V3p__2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) ((c_2Epair_2E_2C_2E2 ((s A_27a) V2p__1_2E0)) ((s A_27b) V3p__2_2E0)))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (_let_1 V1a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (not (= _let_3 _let_2)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ESTRORD_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1s_2E0))) (let ((_let_5 (_let_3 V2t_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_5) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 ((s (_let_1 _let_2)) V0R_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2ERDOM_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2ERDOM_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_3))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_1)))) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Epred__set_2ECARD_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 _let_1)))) (exists ((V2f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27b)) V2f_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V0s_2E0)))) (_let_1 V1t_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_4 A_27b)) V2f_2E0)))) (let ((_let_8 (s A_27b))) (=> (and (= (_let_8 (_let_7 _let_3)) (_let_8 (_let_7 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2))))))))))))))))))))) (forall ((F9 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V22t mono_2Etyop_2Enum_2Enum)) (= (((F9 V2a) V1b) V22t) (or (V1b V22t) (V2a V22t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V20t mono_2Etyop_2Enum_2Enum)) (= (or (V1b V20t) (V2a V20t)) (((F8 V2a) V1b) V20t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V18t mono_2Etyop_2Enum_2Enum)) (= (((F7 V2a) V1b) V18t) (or (V1b V18t) (V2a V18t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V16t mono_2Etyop_2Enum_2Enum)) (= (((F6 V2a) V1b) V16t) (or (V2a V16t) (V1b V16t)))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V14t mono_2Etyop_2Enum_2Enum)) (= (or (V0c V14t) (V1b V14t)) (((F5 V1b) V0c) V14t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V12t mono_2Etyop_2Enum_2Enum)) (= (((F4 V1b) V0c) V12t) (or (V0c V12t) (V1b V12t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V10t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V10t) (V1b V10t)) (((F3 V2a) V1b) V10t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V8t mono_2Etyop_2Enum_2Enum)) (= (((F2 V2a) V1b) V8t) (or (V1b V8t) (V2a V8t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V34t mono_2Etyop_2Enum_2Enum)) (= (or (V1b V34t) (V2a V34t)) (((F15 V2a) V1b) V34t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V32t mono_2Etyop_2Enum_2Enum)) (= (((F14 V2a) V1b) V32t) (or (V2a V32t) (V1b V32t)))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V30t mono_2Etyop_2Enum_2Enum)) (= (or (V0c V30t) (V1b V30t)) (((F13 V1b) V0c) V30t))) (=> (forall ((V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V28t mono_2Etyop_2Enum_2Enum)) (= (or (V0c V28t) (V1b V28t)) (((F12 V1b) V0c) V28t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V26t mono_2Etyop_2Enum_2Enum)) (= (((F11 V2a) V1b) V26t) (or (V2a V26t) (V1b V26t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V24t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V24t) (V1b V24t)) (((F10 V2a) V1b) V24t))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V6t mono_2Etyop_2Enum_2Enum)) (= (((F1 V2a) V1b) V6t) (or (V2a V6t) (V1b V6t)))) (=> (forall ((V2a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V4t mono_2Etyop_2Enum_2Enum)) (= (or (V2a V4t) (V1b V4t)) (((F0 V2a) V1b) V4t))) (forall ((V0c (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V3x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2ENEXT V2a) V3x) ((mono_2Ec_2ETemporal__Logic_2ENEXT V1b) V3x)) ((mono_2Ec_2ETemporal__Logic_2ENEXT ((F0 V2a) V1b)) V3x))) (forall ((V5x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1b) V5x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL V2a) V5x)) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL ((F1 V2a) V1b)) V5x))) (forall ((V7x mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2ETemporal__Logic_2EWHEN V2a) V0c) V7x) (((mono_2Ec_2ETemporal__Logic_2EWHEN V1b) V0c) V7x)) (((mono_2Ec_2ETemporal__Logic_2EWHEN ((F2 V2a) V1b)) V0c) V7x))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2ESUNTIL V2a))) (= ((_let_1 ((F5 V1b) V0c)) V13x) (or ((_let_1 V0c) V13x) ((_let_1 V1b) V13x))))) (forall ((V17x mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1b) V0c) V17x) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V0c) V17x)) (((mono_2Ec_2ETemporal__Logic_2ESBEFORE ((F7 V2a) V1b)) V0c) V17x))) (forall ((V21x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1b) V21x) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V2a) V21x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL ((F9 V2a) V1b)) V21x))) (forall ((V23x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN ((F10 V2a) V1b)) V0c) V23x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V2a) V0c) V23x) (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1b) V0c) V23x)))) (forall ((V25x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN ((F11 V2a) V1b)) V0c) V25x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V2a) V0c) V25x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1b) V0c) V25x)))) (forall ((V31x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE ((F14 V2a) V1b)) V0c) V31x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1b) V0c) V31x) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V2a) V0c) V31x)))) (forall ((V33x mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V2a) V0c) V33x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1b) V0c) V33x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE ((F15 V2a) V1b)) V0c) V33x))) (forall ((V29x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V2a))) (= (or ((_let_1 V1b) V29x) ((_let_1 V0c) V29x)) ((_let_1 ((F13 V1b) V0c)) V29x)))) (forall ((V27x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V2a))) (= ((_let_1 ((F12 V1b) V0c)) V27x) (or ((_let_1 V1b) V27x) ((_let_1 V0c) V27x))))) (forall ((V19x mono_2Etyop_2Enum_2Enum)) (= (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V2a) V19x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1b) V19x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F8 V2a) V1b)) V19x))) (forall ((V15x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE ((F6 V2a) V1b)) V0c) V15x) (or (((mono_2Ec_2ETemporal__Logic_2EBEFORE V2a) V0c) V15x) (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1b) V0c) V15x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EUNTIL V2a))) (= ((_let_1 ((F4 V1b) V0c)) V11x) (or ((_let_1 V1b) V11x) ((_let_1 V0c) V11x))))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= (or (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1b) V0c) V9x) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V2a) V0c) V9x)) (((mono_2Ec_2ETemporal__Logic_2ESWHEN ((F3 V2a) V1b)) V0c) V9x)))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V2R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Erelation_2EWF_2E1 _let_5))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_3) _let_2))) (not (= _let_3 _let_2))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V1P_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V2x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s _let_4) V1P_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V4x_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERC_2E3 ((s (_let_3 _let_4)) V0R_2E0)) _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERC_2E3 _let_5) _let_3) _let_2)))))))))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (V0f V1n)) (V0f (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V2m) V3n) ((mono_2Ec_2Eprim__rec_2E_3C (V0f V2m)) (V0f V3n)))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) _let_2))) (not (= _let_3 _let_2))) (exists ((V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (and (not (= _let_3 _let_2)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) V0R_2E0)) _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_3 _let_6)) V1R_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 (_let_1 (_let_4 _let_5))))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V4x_2E0))) (let ((_let_6 (c_2Erelation_2ERC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_1 (_let_4 _let_5))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((A_27g d) (V0Z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0Z_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakOrder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ereflexive_2E1 _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1k_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1k_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (s (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_8 (c_2Ebool_2EIN_2E2 _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 (c_2Erelation_2ERDOM_2E1 (_let_5 ((c_2Erelation_2ERDOM__DELETE_2E2 _let_6) _let_2))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_7 (c_2Erelation_2ERDOM_2E1 _let_6))))) (not (= _let_3 _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1a_2E0)) (_let_1 V2b_2E0)))) (forall ((V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3Q_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V3Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_8))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1a_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V2b_2E0))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Esymmetric_2E1 (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27c d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 ((mono_2Ec_2Elist_2EGENLIST_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Elist_2EGENLIST_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2ERUNIV_2E2 ((s A_27a) V0x_2E0)) ((s A_27b) V1y_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (or (forall ((V3t mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V3t) V2t0) (V0a V3t))) (exists ((V4delta mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D V4delta) V2t0) (forall ((V5t mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V4delta) V5t) ((mono_2Ec_2Earithmetic_2E_3C_3D V5t) V2t0)) (and (not (V1b V5t)) (V0a V5t)))) (V1b V4delta)))) (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V0a) V1b) V2t0))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Erelation_2EWFREC_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Erelation_2EWFREC_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1a_2E0)) (_let_1 V2b_2E0)))) (forall ((V3P_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u) (V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V3P_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V6x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V7y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V3P_2E0)) (_let_1 V1a_2E0)))) (_let_1 V2b_2E0))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 (app_2E2 _let_5))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_1 V3x_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_9 _let_10)) V1R2_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_3 _let_13)) V0R1_2E0))) (let ((_let_15 (tyop_2Emin_2Efun _let_4))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Equotient_2Erespects_2E2 ((s (_let_15 (_let_15 tyop_2Emin_2Ebool))) ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_14) _let_11))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) (_let_7 (_let_6 _let_8))))) (_let_7 (_let_6 _let_2)))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERTC_2E0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2s_2E0 u) (V3t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V3t_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0))) (let ((_let_4 (s (_let_2 A_27b)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 (_let_4 V0f_2E0)) _let_3) _let_1))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0)))) (= (_let_4 ((app_2E2 (_let_3 V0f_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V1g_2E0)) _let_1)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EBIJ_2E3 (_let_4 V1g_2E0)) _let_3) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (_let_4 V1R2_2E0))) (let ((_let_6 (_let_4 V0R1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (s _let_3))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_8 ((app_2E2 _let_6) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_8 ((app_2E2 _let_5) _let_2))) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Erelation_2ERUNION_2E4 _let_6) _let_5) _let_2) _let_1))))))))))))) (forall ((A_27a d) (V0x mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V0x))) (and (= (exists ((V4l_27_2E0 u) (V5e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V5e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))))))) ((mono_2Ec_2Earithmetic_2E_3E_3D _let_1) _let_2)) (= (= _let_2 _let_1) (exists ((V8l_27_2E0 u) (V9e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V8l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V9e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= (= _let_1 _let_2) (exists ((V6l_27_2E0 u) (V7e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V7e1_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V0x)))))) (= ((mono_2Ec_2Earithmetic_2E_3C_3D _let_2) _let_1) (exists ((V2l_27_2E0 u) (V3e1_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_27_2E0))) (and (= (_let_1 V1l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V3e1_2E0)) _let_2))) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 ((s A_27a) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 _let_4))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Erelation_2ERINTER_2E4 _let_7) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_3) ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Erelation_2ERINTER_2E0)) _let_7))) _let_6))) _let_2))) _let_1))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))) (= _let_3 _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eantisymmetric_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1R1_2E0))) (let ((_let_3 (_let_1 V0R2_2E0))) (= (_let_1 ((c_2Erelation_2ERINTER_2E2 _let_2) _let_3)) (_let_1 ((c_2Erelation_2ERINTER_2E2 _let_3) _let_2))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Estring_2Echar) (V2 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (s tyop_2Estring_2Echar))) (= (_let_1 (i_mono_2Etyop_2Estring_2Echar (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Estring_2Echar V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V1))) (_let_1 (i_mono_2Etyop_2Estring_2Echar V2))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Ebi__unique_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Ebi__unique_2E0)) _let_2)))))))) (forall ((A_27a d) (V0e_2E0 u) (V1l_2E0 u) (V2h_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 (_let_3 V2h_2E0)) _let_2)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (_let_3 V0e_2E0))) (let ((_let_7 (c_2Ebool_2EIN_2E2 _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) (not (= _let_6 (_let_3 (c_2Elist_2ELAST_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (c_2Elist_2EFRONT_2E1 _let_4))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1y_2E0 u)) (= (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0R_2E0)) ((s A_27a) V2x_2E0)))) ((s A_27b) V1y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2ERRANGE_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27b) V1y_2E0)))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun A_27a) (_let_6 _let_3)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_3))) (let ((_let_10 (_let_6 _let_9))) (= (_let_4 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Elist_2EFOLDR_2E0)) _let_8))) _let_5))) _let_2)))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakOrder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etrichotomous_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWeakLinearOrder_2E1 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS__UNIQUE_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2Erelation_2ERUNION_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERUNION_2E0)) _let_5))) _let_4))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2EEQC_2E3 _let_5) _let_3) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) _let_2))) (or (exists ((V3u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V2y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) (_let_1 V1x_2E0)) _let_2))))))))))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1R2_2E0 u) (V2R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V2R1_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_2 V1R2_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Erelation_2ERDOM_2E1 (_let_2 ((c_2Erelation_2ERUNION_2E2 _let_3) _let_7))))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Erelation_2ERDOM_2E1 _let_7))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Erelation_2ERDOM_2E1 _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V2Q_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ereflexive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V3x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_3 _let_10)) V1R_2E0)) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V2Q_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2)))))))))))))))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V5x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) V2Q_2E0)) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eantisymmetric_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1R2_2E0))) (let ((_let_3 (_let_1 V0R1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_3) _let_2)))) (= _let_3 _let_2))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V1R_2E0)) _let_6))) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27z d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27z) A_27z)))) (let ((_let_2 (_let_1 V0f_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EINVOL_2E1 _let_2))) (= (_let_1 ((c_2Ecombin_2Eo_2E2 _let_2) _let_2)) (_let_1 c_2Ecombin_2EI_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1m_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1m_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_5))) (= (_let_4 (((c_2Ebool_2ERES__ABSTRACT_2E3 _let_5) _let_3) _let_1)) (_let_4 ((app_2E2 _let_3) _let_1)))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1Q_2E0 u) (V2a_2E0 u)) (=> (and (forall ((V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V1Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V3y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2a_2E0))))) (forall ((V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ERTC_2E3 ((s (_let_3 _let_4)) V0R_2E0)) (_let_1 V2a_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) V1Q_2E0)) _let_2)))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (forall ((V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V4x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) (= (_let_1 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Elist_2Elist _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 (s _let_1))) (= (_let_8 ((c_2Elist_2ELIST__BIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Elist_2ELIST__BIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) _let_2))) _let_2)))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWF_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0R1_2E0 u) (V1R2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2ERSUBSET_2E2 (_let_1 V0R1_2E0)) (_let_1 V1R2_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 ((s A_27b) V3y_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) _let_3)))) (let ((_let_5 (s _let_3))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V0R1_2E0)) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 (_let_4 V1R2_2E0)) _let_2))) _let_1)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EStrongOrder_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ESTRORD_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3)))) _let_3)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2A V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2A V1n) V2p)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eequivalence_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (_let_6 (_let_5 (_let_1 V1x_2E0))))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_2))) (= _let_7 (_let_6 (_let_5 _let_2))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (or ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (= V0m V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) V0m))) (= (_let_79 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (_let_79 c_2Epair_2E_2C_2E0)) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V2l mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29) (V3v (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2EdefCNF_2EDEF V3v) V0n))) (= (and (((mono_2Ec_2EdefCNF_2EUNIQUE V3v) ((mono_2Ec_2Earithmetic_2E_2B V0n) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V2l))) V1x) (_let_1 V2l)) (_let_1 ((mono_2Ec_2Elist_2ESNOC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1x) V2l))))) (forall ((A_27a d) (V0c mono_2Etyop_2Enum_2Enum) (V1i_2E0 u) (V2r_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s (_let_1 _let_2)) V2r_2E0))) (let ((_let_4 (s _let_2))) (let ((_let_5 ((s A_27a) V1i_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (_let_4 (((c_2Eind__type_2EZCONSTR_2E3 (_let_6 (i_mono_2Etyop_2Enum_2Enum V0c))) _let_5) _let_3)) (_let_4 ((c_2Eind__type_2EINJP_2E2 (_let_4 (c_2Eind__type_2EINJN_2E1 (_let_6 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0c)))))) (_let_4 ((c_2Eind__type_2EINJP_2E2 (_let_4 (c_2Eind__type_2EINJA_2E1 _let_5))) (_let_4 (c_2Eind__type_2EINJF_2E1 _let_3)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ERC_2E1 _let_3)) _let_3)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ESTRORD_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESTRORD_2E0)) _let_4)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V4y_2E0))) (let ((_let_11 (_let_6 V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ERTC_2E3 _let_11) _let_3) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 ((app_2E2 _let_11) _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2)))))))))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1)))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27b) X0_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EerrorStateMonad_2EES__FAIL_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_2)) c_2EerrorStateMonad_2EES__FAIL_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eprim__rec_2Emeasure_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eprim__rec_2Emeasure_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakLinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakLinearOrder_2E0)) _let_3))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2ENUMERAL V0x) V0x)) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etotal_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_3) ((s (_let_1 A_27a)) V1f_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2N_2E0 u) (V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 ((s A_27b) V6y_2E0))) (let ((_let_2 ((s A_27a) V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2N_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_9 ((s _let_8) V0P_2E0))) (let ((_let_10 (s A_27d))) (let ((_let_11 (_let_3 A_27d))) (let ((_let_12 (_let_5 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_6) _let_12))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) F1_2E0)) _let_9))) _let_7))) _let_2))) _let_1)) (_let_10 ((app_2E2 _let_9) ((s A_27c) ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))))))) (=> (forall ((V2N_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V4y_2E0))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2N_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s A_27c))) (= (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) _let_2))) _let_1)) (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1)))))))))))) (forall ((V0P_2E0 u) (V1M_2E0 u) (V2N_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V1M_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 A_27c)))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V2N_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_9 ((s _let_8) V0P_2E0))) (let ((_let_10 (_let_4 (_let_3 A_27d)))) (let ((_let_11 (tyop_2Emin_2Efun _let_5))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (tyop_2Emin_2Efun _let_1))) (let ((_let_14 (s A_27d))) (= (_let_14 ((app_2E2 _let_9) ((s A_27c) ((c_2Ebool_2ELET_2E2 ((s (_let_13 A_27c)) (c_2Epair_2EUNCURRY_2E1 (_let_6 ((app_2E2 ((s (_let_11 _let_5)) F0_2E0)) _let_7))))) _let_2)))) (_let_14 ((c_2Ebool_2ELET_2E2 ((s (_let_13 A_27d)) (c_2Epair_2EUNCURRY_2E1 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F1_2E0)) _let_9))) _let_7))))) _let_2))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Erelation_2ERDOM__DELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Erelation_2ERDOM__DELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u) (V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3Q_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 (_let_5 V2R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 (_let_5 V3Q_2E0)) _let_3) _let_2)))))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2x mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (= (((F0 V1f) V2x) V3n) ((mono_2Ec_2Earithmetic_2E_2B (V1f V3n)) V2x))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM V0n) V1f) (((mono_2Ec_2Elist_2EFOLDL_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (F0 V1f)) mono_2Ec_2Enum_2E0) (mono_2Ec_2Erich__list_2ECOUNT__LIST V0n)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2ELIST__REL_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Elist_2ELIST__REL_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0S2_2E0 u) (V1S1_2E0 u) (V2R2_2E0 u) (V3R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (s (_let_2 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_3 V0S2_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_1 _let_5)))) (let ((_let_7 (_let_6 V2R2_2E0))) (let ((_let_8 (s (_let_2 _let_5)))) (let ((_let_9 (_let_3 V1S1_2E0))) (let ((_let_10 (_let_6 V3R1_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Erelation_2ERSUBSET_2E2 _let_10) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Erelation_2ERSUBSET_2E2 _let_9) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Erelation_2ERSUBSET_2E2 (_let_8 ((c_2Erelation_2EO_2E2 _let_10) _let_9))) (_let_8 ((c_2Erelation_2EO_2E2 _let_7) _let_4)))))))))))))))))) (forall ((A_27a d)) (and (forall ((V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 (_let_1 c_2Epred__set_2EUNIV_2E0)) _let_2)) _let_2)))) (forall ((V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1s_2E0))) (= (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_2) (_let_1 c_2Epred__set_2EUNIV_2E0))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Erelation_2ERUNION_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erelation_2ERUNION_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Erelation_2Einv_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2Einv_2E0)) _let_4)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2EWFP_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Erelation_2EWFP_2E0)) _let_5))) _let_1))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2E_3F_21_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ebool_2E_3F_21_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1M_2E0 u) (V3f_2E0 u) (V0R_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27a) V4y_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V3f_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_5))) (let ((_let_9 (_let_8 _let_5))) (let ((_let_10 ((s _let_9) V1M_2E0))) (let ((_let_11 (s A_27b))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_5))) (let ((_let_13 (_let_8 _let_12))) (= (_let_11 ((app_2E2 (_let_6 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_13)) F0_2E0)) _let_10))) _let_7))) _let_4))) _let_1)) (_let_11 ((app_2E2 (_let_6 ((app_2E2 _let_10) (_let_6 (((c_2Erelation_2ERESTRICT_2E3 _let_7) _let_4) _let_1))))) _let_1))))))))))))))))) (forall ((V0R_2E0 u) (V1M_2E0 u) (V2x_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V3f_2E0))) (let ((_let_5 ((s A_27a) V2x_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 ((s _let_7) V1M_2E0))) (let ((_let_9 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_10 ((s _let_9) V0R_2E0))) (let ((_let_11 ((tyop_2Emin_2Efun _let_9) _let_2))) (let ((_let_12 (_let_6 _let_11))) (= (= _let_4 (_let_3 (((c_2Erelation_2ERESTRICT_2E3 (_let_3 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_4))) _let_10))) _let_10) _let_5))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((((c_2Erelation_2Eapprox_2E4 _let_10) _let_8) _let_5) _let_4))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EWFP_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1x_2E0)))) (forall ((V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V1x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2EWFP_2E2 _let_5) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3)))) (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2EEncode_2Elift__option_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2EEncode_2Elift__option_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 (c_2Erelation_2EEQC_2E1 _let_3)) (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 (c_2Erelation_2ESC_2E1 _let_3))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s A_27a) V0x_2E0))) (= (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_4) _let_2)))) (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWeakOrder_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2ESTRORD_2E1 _let_3)))) _let_3)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERUNIV_2E2 _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) c_2Erelation_2ERUNIV_2E0)) _let_2))) _let_1))))))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eantisymmetric_2E0)) _let_3))))))))) (forall ((V0b mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) (forall ((V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V0b))) (= (= (_let_1 V1n) (_let_1 V2m)) (= V1n V2m)))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0R_2E0 u) (V1R_27_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 _let_2)) V0R_2E0))) (let ((_let_5 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27c))) (let ((_let_7 ((s (_let_6 _let_5)) V1R_27_2E0))) (let ((_let_8 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_9 (s (_let_1 _let_8)))) (= (_let_9 (c_2Erelation_2Einv_2E1 ((s (_let_6 _let_2)) ((c_2Erelation_2EO_2E2 _let_4) _let_7)))) (_let_9 ((c_2Erelation_2EO_2E2 ((s (_let_3 _let_8)) (c_2Erelation_2Einv_2E1 _let_7))) ((s (_let_1 _let_5)) (c_2Erelation_2Einv_2E1 _let_4))))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (= (or (and (_let_1 V1y) (_let_2 V0x)) (and (_let_2 V1y) (_let_1 V0x))) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0x) V1y)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ETC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ETC_2E0)) _let_4)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v__old_2E0 u) (V1v__new_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (s A_27c))) (= (_let_2 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) V0v__old_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) _let_1))) c_2Elist_2ENIL_2E0))) (_let_2 ((c_2EpatternMatches_2EPMATCH_2E2 ((s A_27b) V1v__new_2E0)) ((s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) _let_1))) c_2Elist_2ENIL_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Eprim__rec_2E_3C V0m) ((mono_2Ec_2Earithmetic_2E_2B V1n) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) V2p))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 (_let_3 V0R_2E0))) (= (_let_3 ((c_2Erelation_2EO_2E2 ((s (_let_1 _let_2)) c_2Emin_2E_3D_2E0)) _let_4)) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etrichotomous_2E1 (_let_2 (c_2Erelation_2ESTRORD_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etrichotomous_2E1 _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 (c_2Eind__type_2EINJF_2E1 _let_4)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Eind__type_2EINJF_2E0)) _let_4))))))))) (forall ((V0k mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) (exists ((V2r mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Eprim__rec_2E_3C V2r) V1n) (= V0k ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3q) V1n)) V2r)))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V1P_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V4x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V5y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))) (forall ((V7u_2E0 u) (V8v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8v_2E0))) (let ((_let_3 (_let_1 V7u_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s (_let_3 _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 ((app_2E2 (_let_5 V1P_2E0)) (_let_1 V3x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V0R_2E0)) _let_9))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))))))))))))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1)))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3R_2E0 u) (V4lo_2E0 u) (V2hd_2E0 u) (V5eq_2E0 u) (V6hi_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V6hi_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V3R_2E0))) (let ((_let_7 (c_2Esorting_2EQSORT3_2E2 _let_6))) (let ((_let_8 (_let_2 V5eq_2E0))) (let ((_let_9 ((s A_27a) V2hd_2E0))) (let ((_let_10 (_let_2 V4lo_2E0))) (let ((_let_11 (tyop_2Emin_2Efun _let_1))) (let ((_let_12 (_let_11 _let_1))) (let ((_let_13 (_let_11 _let_12))) (let ((_let_14 (_let_4 _let_13))) (let ((_let_15 (_let_11 _let_14))) (= (_let_2 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_15)) F1_2E0)) _let_6))) _let_10))) _let_9))) _let_8))) _let_3)) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 (_let_7 _let_10))) (_let_2 ((c_2Elist_2ECONS_2E2 _let_9) _let_8))))) (_let_2 (_let_7 _let_3))))))))))))))))))))) (=> (forall ((V3R_2E0 u) (V2hd_2E0 u) (V4lo_2E0 u)) (let ((_let_1 ((s A_27a) V2hd_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((s _let_2) V4lo_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) V3R_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 (_let_7 _let_2)))) (let ((_let_9 (_let_4 _let_8))) (let ((_let_10 (_let_7 _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_5))) (let ((_let_12 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_2) _let_2)) _let_2))) (let ((_let_13 (s _let_12))) (let ((_let_14 (_let_7 _let_12))) (let ((_let_15 (_let_4 _let_14))) (= (_let_13 ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s (_let_11 _let_15)) F0_2E0)) _let_6))) _let_1))) _let_3)) (_let_13 (c_2Epair_2EUNCURRY_2E1 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_6))) _let_3))) _let_1))))))))))))))))))))) (and (forall ((V0R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (_let_1 ((c_2Esorting_2EQSORT3_2E2 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)) _let_2)) _let_2))))) (forall ((V1tl_2E0 u) (V2hd_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1tl_2E0))) (let ((_let_4 ((s A_27a) V2hd_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) V3R_2E0))) (let ((_let_8 (tyop_2Epair_2Eprod _let_1))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun _let_9) _let_1)))) (let ((_let_12 (_let_5 _let_11))) (= (_let_2 ((c_2Esorting_2EQSORT3_2E2 _let_7) (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)))) (_let_2 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_1)) (c_2Epair_2EUNCURRY_2E1 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_12)) F0_2E0)) _let_7))) _let_4))))) ((s _let_10) (((c_2Esorting_2EPART3_2E3 _let_7) _let_4) _let_3)))))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 (_let_2 V0R_2E0))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWF_2E1 (_let_2 V1P_2E0))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1xs_2E0 u) (V2ys_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2ys_2E0))) (let ((_let_3 (c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V3n))))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V1xs_2E0))) (let ((_let_6 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0P_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_4 (_let_3 _let_5))) (_let_1 (_let_3 _let_2)))))))))))))) (forall ((A_27a d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R2_2E0))) (let ((_let_4 (_let_2 V1R1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Eantisymmetric_2E1 (_let_2 ((c_2Erelation_2ERINTER_2E2 _let_4) _let_3))))))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Eantisymmetric_2E1 _let_3))) _let_6) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Eantisymmetric_2E1 _let_4))) _let_6))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 (_let_2 c_2Emin_2E_3D_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EPreOrder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ereflexive_2E1 _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun _let_3) (_let_2 _let_3)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))))))))) (forall ((A_27a d) (V0I (-> mono_2Etyop_2Enum_2Enum Bool)) (V1J (-> mono_2Etyop_2Enum_2Enum Bool)) (V2n_2E0 u)) (=> (and (not (= V0I mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) (not (= V1J mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Epred__set_2ESUBSET_2Emono_2Etyop_2Enum_2Enum V0I) V1J)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Epred__set_2EMIN__SET V1J)) (mono_2Ec_2Epred__set_2EMIN__SET V0I)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Eprim__rec_2EPRE V0m)) V1n))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u) (V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3Q_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 (_let_5 V2R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 (_let_5 V3Q_2E0)) _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (s (tyop_2Eoption_2Eoption A_27a)))) (= (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_3)) (_let_4 (c_2Eoption_2ESOME_2E1 _let_2))) (= _let_3 _let_2))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n)))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) ((c_2Elist_2EEL_2E2 _let_4) _let_2))) (_let_1 ((c_2Elist_2ETAKE_2E2 _let_4) _let_2)))) (_let_1 ((c_2Elist_2ETAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V0n)))) _let_2))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2EEQC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2EEQC_2E0)) _let_4)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_3) ((s (_let_1 A_27a)) V1f_2E0)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3)))) (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2EFINITE_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecardinal_2Ecardeq_2E2 ((s ((tyop_2Emin_2Efun (_let_1 (tyop_2Eoption_2Eoption A_27a))) tyop_2Emin_2Ebool)) (c_2Ecardinal_2Ebijns_2E1 _let_3))) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (c_2Epred__set_2EPOW_2E1 _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Enum_2Enum)) V1b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Enum_2Enum)) ((c_2Ebag_2EBAG__IMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2)))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (forall ((V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3e2_2E0))) (let ((_let_3 (_let_1 V2e1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 V1s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_3) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_2) _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) V0P_2E0)) _let_3))) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2Epairwise_2E2 ((s (_let_1 _let_2)) V0P_2E0)) ((s _let_2) V1s_2E0)))))))) (forall ((A_27a d) (V0A_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0A_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2Ediag_2E3 _let_4) _let_3) _let_2)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 (c_2Erelation_2ESC_2E1 (_let_2 V0R_2E0))))) (= (_let_2 (c_2Erelation_2ESC_2E1 _let_3)) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0b_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2ESET__OF__BAG_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s _let_1))) (= (_let_4 (c_2Erelation_2ERRANGE_2E1 _let_3)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_1)) c_2Erelation_2ERRANGE_2E0)) _let_3)))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2E_2D V0n) V1m)))) (forall ((V0 (-> Bool Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Erelation_2EINVOL_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Erelation_2EINVOL_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 (c_2Eset__relation_2Eminimal__elements_2E2 _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Erange_2E1 _let_2))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_2))) _let_4)))) (= (_let_3 (_let_5 (_let_1 (c_2Eset__relation_2Etc_2E1 _let_2)))) (_let_3 (_let_5 _let_2))))))))))) (and (= (mono_2Ec_2Eoption_2EOPTION__GUARD mono_2Ec_2Ebool_2ET) (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)) (= (mono_2Ec_2Eoption_2EOPTION__GUARD mono_2Ec_2Ebool_2EF) mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Eone_2Eone)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eset__relation_2Edomain_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eset__relation_2Edomain_2E0)) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= (and (= V1n mono_2Ec_2Enum_2E0) (= V0m mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V2y_2E0))) (let ((_let_2 ((s A_27a) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ERCOMPL_2E3 _let_4) _let_2) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27g d) (V0Z_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0Z_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EOrder_2E1 _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ESNOC_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eequivalence_2E1 _let_3))) (= (_let_2 (c_2Erelation_2Einv_2E1 _let_3)) _let_3)))))) (and (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Esum__num_2ESUM mono_2Ec_2Enum_2E0) V0f) mono_2Ec_2Enum_2E0)) (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1m)))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2D _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (= ((mono_2Ec_2Esum__num_2ESUM _let_1) V2f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2ESUM _let_2) V2f)) (V2f _let_2)))))) (forall ((V3m mono_2Etyop_2Enum_2Enum) (V4f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3m)))) (= ((mono_2Ec_2Esum__num_2ESUM (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V3m))) V4f) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Esum__num_2ESUM _let_1) V4f)) (V4f _let_1)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Erelation_2ERRANGE_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) c_2Erelation_2ERRANGE_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0v_2E0 u) (V1rows1_2E0 u) (V2rows2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b)))))) (let ((_let_2 (_let_1 V1rows1_2E0))) (let ((_let_3 (_let_1 V2rows2_2E0))) (let ((_let_4 (c_2EpatternMatches_2EPMATCH__EQUIV__ROWS_2E3 ((s A_27a) V0v_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 _let_2) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 _let_3) _let_2)))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V0P_2E0 u) (V3s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_2 V3s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_4 _let_7)) F1_2E0)) _let_3))) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ERES__EXISTS_2E2 _let_5) (_let_2 ((app_2E2 ((s (_let_4 _let_1)) F2_2E0)) _let_3)))))))))))))) (=> (forall ((V0P_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1sos_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1sos_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS_2E2 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 _let_7))) (_let_2 ((app_2E2 ((s (_let_4 _let_1)) F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS_2E2 _let_7) (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))))))))))))))))))) (forall ((A_27z d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27z) A_27z))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ecombin_2Eo_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2P_2E0 u) (V3M_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_2 _let_6)) V2P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V3M_2E0))) (let ((_let_10 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V1R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Erelation_2EWF_2E1 _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (((c_2Erelation_2EINDUCTIVE__INVARIANT_2E3 _let_10) _let_7) _let_9))) (= _let_5 (_let_4 ((c_2Erelation_2EWFREC_2E2 _let_10) _let_9)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_5) _let_1))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27c)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun (_let_3 A_27b)) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun (_let_3 A_27c)) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eset__relation_2Ercomp_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eset__relation_2Ercomp_2E0)) _let_5))) _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2ERC_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2ESC_2E1 _let_4)) (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2ESC_2E1 _let_3))))) (= (_let_2 (c_2Erelation_2ERC_2E1 _let_4)) _let_4) (= (_let_2 (c_2Erelation_2ETC_2E1 _let_4)) (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X1)))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 c_2Erelation_2ERUNIV_2E0))) (let ((_let_3 (_let_1 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_3) _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_2) _let_3))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (V0R1_2E0 u) (V1R2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_2 V1R2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_3) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3)))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V0a) V1b) V2t0) (exists ((V3q (-> mono_2Etyop_2Enum_2Enum Bool))) (and (forall ((V4t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V4t) V2t0))) (or (V1b _let_1) (V0a _let_1) (V3q _let_1)))) (((mono_2Ec_2ETemporal__Logic_2EWATCH V3q) V1b) V2t0))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erelation_2Ediag_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Erelation_2Ediag_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V2t) (not (V0b V2t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (((F1 V1a) V0b) V3t) (or (V0b V3t) (V1a V3t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2ESWHEN (F0 V0b)) ((F1 V1a) V0b))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EEMPTY__REL_2E2 (_let_1 V0x_2E0)) (_let_1 V1y_2E0)))) mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (=> (and (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2ESURJ_2E3 ((s (_let_1 A_27b)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))))))) (exists ((V4h_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V4h_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EPreOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EPreOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ECONS_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) c_2Elist_2ECONS_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1P_2E0 u) (V2M_2E0 u) (V3D_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V2M_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_2 _let_5)) V0R_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 ((s (_let_2 _let_7)) V1P_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_5) V3D_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2EWF_2E1 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 _let_10) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((((c_2Erelation_2EINDUCTIVE__INVARIANT__ON_2E4 _let_6) _let_10) _let_8) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 _let_8) _let_1))) ((s A_27b) (((c_2Erelation_2EWFREC_2E3 _let_6) _let_4) _let_1))))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2EEQC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V2y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_4 _let_7) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1R1_2E0))) (let ((_let_3 (_let_1 V0R2_2E0))) (= (_let_1 ((c_2Erelation_2ERUNION_2E2 _let_2) _let_3)) (_let_1 ((c_2Erelation_2ERUNION_2E2 _let_3) _let_2))))))) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u) (V4l_2E0 u) (V5t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_4 ((s _let_3) V4l_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 (s (tyop_2Eoption_2Eoption _let_5)))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 ((s (_let_7 _let_1)) V3e2_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27a))) (let ((_let_10 ((s (_let_9 _let_1)) V2e1_2E0))) (let ((_let_11 ((s (_let_7 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_12 (tyop_2Emin_2Efun _let_1))) (let ((_let_13 ((s (_let_9 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_14 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((c_2EEncode_2Ewf__encoder_2E2 _let_11) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 (((c_2EEncode_2Elift__sum_2E3 _let_13) _let_11) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_14 ((c_2EEncode_2Ewf__encoder_2E2 _let_13) _let_10)))) (= (_let_6 ((((c_2EDecode_2Edecode__sum_2E4 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__sum_2E2 _let_13) _let_11))) ((s (_let_12 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_13) _let_10))) ((s (_let_12 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1)))) ((c_2EDecode_2Eenc2dec_2E2 _let_11) _let_8))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (_let_2 (((c_2EEncode_2Eencode__sum_2E3 _let_10) _let_8) _let_4)))) V5t))))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 _let_4) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V5t))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V5rep2_2E0 u) (V6f_2E0 u) (V1abs1_2E0 u) (V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) V1abs1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27d))) (let ((_let_6 ((s _let_5) V6f_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_8 ((s _let_7) V5rep2_2E0))) (let ((_let_9 (s A_27b))) (let ((_let_10 (_let_2 A_27b))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_6))) _let_4))) _let_1)) (_let_9 ((app_2E2 _let_8) ((s A_27d) ((app_2E2 _let_6) ((s A_27c) ((app_2E2 _let_4) _let_1)))))))))))))))))))) (forall ((V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7x_2E0 u)) (let ((_let_1 ((s A_27c) V7x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27d))) (let ((_let_6 ((s _let_5) V6f_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_8 (_let_2 A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s A_27d))) (= (_let_11 ((app_2E2 _let_6) _let_1)) (_let_11 ((((c_2Equotient_2E_2D_2D_3E_2E4 ((s (_let_4 A_27a)) V2rep1_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27d)) V4abs2_2E0)) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) ((s _let_7) V5rep2_2E0)))) _let_6))) ((s _let_3) V1abs1_2E0)))) _let_1))))))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2))) (or (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V1x_2E0)))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_2) (_let_1 V2z_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0R_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V1x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V2y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2))))))))))))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Esymmetric_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ESC_2E1 _let_3)) _let_3)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_3) ((s (_let_1 A_27a)) V1f_2E0)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 V0R_2E0))))) (= (_let_2 (c_2Erelation_2ETC_2E1 _let_3)) _let_3))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 X1_2E0))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_2))) (let ((_let_11 ((tyop_2Emin_2Efun _let_2) _let_10))) (= (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 _let_9) _let_7) _let_5)) (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Eoption_2Eoption__CASE_2E0)) _let_9))) _let_7))) _let_5))))))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (mono_2Ec_2Elist_2EFLAT_2Emono_2Etyop_2Estring_2Echar V0))) (_let_2 (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_1)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0)))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))))) (forall ((V3x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (c_2Ebool_2EIN_2E2 ((s A_27a) V3x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Enum_2Enum))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_6 (i_mono_2Etyop_2Enum_2Enum V0n))) (_let_6 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_3 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C V1m))) (let ((_let_2 (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0n) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1m)))) (and (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0n) V1m)) _let_2) (= _let_2 (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1m) V0n))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eantisymmetric_2E1 _let_3))))))))) (forall ((A_27a d) (A_27b d)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eantisymmetric_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Erelation_2ERSUBSET_2E0)))))) (forall ((A_27x d)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 c_2Ewot_2Emex__less_2E0) (_let_2 (c_2Erelation_2ESTRORD_2E1 (_let_2 c_2Ewot_2Emex__less__eq_2E0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u) (V2D_2E0 u) (V3P_2E0 u) (V4M_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_2 _let_6)) V3P_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_10 ((s (_let_2 _let_9)) V1R_2E0))) (let ((_let_11 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V4M_2E0))) (let ((_let_12 ((s _let_9) V2D_2E0))) (=> (and (= _let_5 (_let_4 ((c_2Erelation_2EWFREC_2E2 _let_10) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_12) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((((c_2Erelation_2EINDUCTIVE__INVARIANT__ON_2E4 _let_10) _let_12) _let_7) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Erelation_2EWF_2E1 _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_5) _let_1))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (and (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2ETC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (_let_4 (_let_1 V3x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((_let_4 _let_7) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_2)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongLinearOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongLinearOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (V0z_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V2R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V2R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_2) (_let_1 V0z_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V1x_2E0)))) _let_2))))))))))))))))))))) (forall ((A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_2) tyop_2Emin_2Ebool))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Epair_2E_2C_2E2 _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_5)) c_2Epair_2E_2C_2E0)) _let_3))) _let_1)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2ESC_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2ESC_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3)))) _let_4) (= (_let_2 (c_2Erelation_2Einv_2E1 _let_4)) _let_4))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (app_2E2 (_let_8 (_let_7 _let_3))))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 V5y_2E0))) (let ((_let_12 (c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 (_let_8 (_let_7 _let_11))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_12 _let_3) _let_11))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_12 _let_11) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_11)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_9 _let_2))))))))))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V7u_2E0 u) (V8v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8v_2E0))) (let ((_let_3 (_let_1 V7u_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1y_2E0))) (let ((_let_5 (_let_3 V0x_2E0))) (= (= _let_5 _let_4) (= (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_2)) (_let_1 ((c_2Epred__set_2EINSERT_2E2 _let_4) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 (_let_6 _let_7))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Erelation_2ERDOM__DELETE_2E4 _let_9) _let_4) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_5) ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Erelation_2ERDOM__DELETE_2E0)) _let_9))) _let_4))) _let_3))) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2EEMPTY__REL_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Erelation_2EEMPTY__REL_2E0)) _let_3))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X2_2E0))) (let ((_let_6 ((s A_27a) X1_2E0))) (let ((_let_7 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (_let_1 _let_8))) (let ((_let_10 (s _let_3))) (= (_let_10 (((c_2Eind__type_2EZCONSTR_2E3 _let_7) _let_6) _let_5)) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_2 _let_9)) c_2Eind__type_2EZCONSTR_2E0)) _let_7))) _let_6))) _let_5)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWCR_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWCR_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ediamond_2E0)) _let_3))))))))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (=> V0P V2Q) (=> V1P_27 V3Q_27)) (=> (and V1P_27 V0P) (and V3Q_27 V2Q)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0m) (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Erich__list_2ECOUNT__LIST V1n))) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27a)) V0f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Epred__set_2EUNIV_2Emono_2Etyop_2Enum_2Enum))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Esymmetric_2E1 (_let_2 (c_2Erelation_2ESC_2E1 (_let_2 V0R_2E0))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_27_2E0 u) (V3R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R_27_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2EEQC_2E3 (_let_5 V3R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2EEQC_2E3 (_let_5 V2R_27_2E0)) _let_3) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun _let_1) (tyop_2Elist_2Elist _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n) (forall ((V1j mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2EMOD V1j) V0n)) ((mono_2Ec_2Earithmetic_2EMOD V2k) V0n))) V0n) ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2A V1j) V2k)) V0n))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R3_2E0 u) (V1R2_2E0 u) (V2R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_1 tyop_2Emin_2Ebool))) V0R3_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_1 _let_5)) V1R2_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (c_2Erelation_2EO_2E2 ((s (_let_4 _let_7)) V2R1_2E0)))) (let ((_let_9 (s (_let_2 _let_7)))) (= (_let_9 (_let_8 ((s (_let_2 _let_5)) ((c_2Erelation_2EO_2E2 _let_6) _let_3)))) (_let_9 ((c_2Erelation_2EO_2E2 ((s (_let_1 _let_7)) (_let_8 _let_6))) _let_3))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERTC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERTC_2E0)) _let_4)))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_8 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_9 (_let_8 _let_7))) (= (_let_2 (((c_2Erich__list_2ESEG_2E3 _let_6) _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Erich__list_2ESEG_2E0)) _let_6))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_5) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Erelation_2EINDUCTIVE__INVARIANT_2E3 _let_8) _let_6) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Erelation_2EINDUCTIVE__INVARIANT_2E0)) _let_8))) _let_6))) _let_4)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) (-> (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar)) (V1 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x3_2E0 u) (V1x2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1x2_2E0))) (let ((_let_3 (_let_1 V0x3_2E0))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM__SINGLE__SWAP_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))) (forall ((V0e mono_2Etyop_2Enum_2Enum)) (and (= (mono_2Ec_2Epred__set_2EMAX__SET mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0) (= (mono_2Ec_2Epred__set_2EMAX__SET ((mono_2Ec_2Epred__set_2EINSERT_2Emono_2Etyop_2Enum_2Enum V0e) mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum)) V0e))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etrichotomous_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etrichotomous_2E1 _let_3))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1M_2E0 u) (V0R_2E0 u) (V3f_2E0 u) (V4v_2E0 u)) (let ((_let_1 ((s A_27a) V4v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) V0R_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V3f_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_9 V1M_2E0))) (let ((_let_11 (s A_27b))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_11 ((app_2E2 (_let_6 ((app_2E2 (_let_9 ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_10))) _let_4))) _let_7))) _let_1)) (_let_11 ((app_2E2 (_let_6 ((app_2E2 _let_10) (_let_6 (((c_2Erelation_2ERESTRICT_2E3 _let_7) _let_4) _let_1))))) _let_1)))))))))))))))) (forall ((V0R_2E0 u) (V1M_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0R_2E0))) (let ((_let_6 (_let_2 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 V1M_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_11 (s _let_6))) (let ((_let_12 (s A_27b))) (= (_let_12 (((c_2Erelation_2EWFREC_2E3 _let_5) _let_9) _let_1)) (_let_12 ((app_2E2 (_let_11 ((app_2E2 _let_9) (_let_11 (((c_2Erelation_2ERESTRICT_2E3 (_let_11 (((c_2Erelation_2Ethe__fun_2E3 (_let_4 (c_2Erelation_2ETC_2E1 _let_5))) (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_9))) _let_5))) _let_1))) _let_5) _let_1))))) _let_1)))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X3_2E0))) (let ((_let_4 ((s A_27a) X2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 _let_2))) (let ((_let_7 ((s _let_6) X1_2E0))) (let ((_let_8 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_11 (_let_1 _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_6) _let_11))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((((c_2Erelation_2Eapprox_2E4 _let_9) _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2Erelation_2Eapprox_2E0)) _let_9))) _let_7))) _let_4))) _let_3)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((mono_2Ec_2EDecode_2Edec2enc_2Emono_2Etyop_2Eone_2Eone V0) V1))) (_let_2 ((c_2EDecode_2Edec2enc_2E2 ((s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0o2_2E0 u) (V1o1_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_2 (_let_1 V0o2_2E0))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_3 V1o1_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27c)))) (= (= (_let_5 (((c_2Eoption_2EOPTION__MAP2_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V2f_2E0)) _let_4) _let_2)) (_let_5 c_2Eoption_2ENONE_2E0)) (or (= _let_4 (_let_3 c_2Eoption_2ENONE_2E0)) (= _let_2 (_let_1 c_2Eoption_2ENONE_2E0)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EIDEM_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Erelation_2EIDEM_2E0)) _let_4)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_2 ((c_2Ecombin_2EK_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Ecombin_2EK_2E0)) _let_3))) _let_1)))))))) (= (_let_77 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Epred__set_2EDELETE_2Emono_2Etyop_2Enum_2Enum)) (_let_77 c_2Epred__set_2EDELETE_2E0)) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2))))))))))))) (forall ((V7x_2E0 u) (V8y_2E0 u) (V9z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V1P_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V7x_2E0)))))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_1 V8y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_9))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 (_let_5 _let_9))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 _let_2)))))))))))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (_let_1 V6y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V1P_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1)))))))) (forall ((V10x_2E0 u) (V11y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V11y_2E0))) (let ((_let_3 (_let_1 V10x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2EEQC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eirreflexive_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ebag_2EEL__BAG_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Ebag_2EEL__BAG_2E0)) _let_1)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2ESN_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EWCR_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2ECR_2E1 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Erelation_2Einv__image_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Einv__image_2E0)) _let_6))) _let_3))))))))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_2)) ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_2) _let_1)) _let_1)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun (_let_2 (_let_2 _let_1))) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Erelation_2Einv__image_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Einv__image_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V2y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 _let_6) _let_8) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1P2_2E0 u) (V0P1_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P1_2E0))) (let ((_let_5 (_let_3 V1P2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (forall ((V0P1_2E0 u) (V1P2_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0P1_2E0))) (let ((_let_6 (_let_4 V1P2_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 _let_5) (_let_1 ((c_2Elist_2EFILTER_2E2 _let_6) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EEVERY_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_5))) _let_2)))))))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (app_2E2 _let_3))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 ((s (_let_7 _let_8)) V0R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Erelation_2Einv__image_2E4 _let_9) _let_3) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 _let_9) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ercdiamond_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))))))))) (= (_let_75 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (_let_75 c_2Epair_2Epair__CASE_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Echain_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Echain_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2ECR_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2ECR_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (forall ((V3P_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (=> (and (forall ((V5x_2E0 u) (V6y_2E0 u) (V7z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7z_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V3P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V6y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2))))))))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V3P_2E0)) _let_1))) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V3P_2E0)) (_let_1 V1a_2E0)))) (_let_1 V2b_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) (_let_1 V1a_2E0)) (_let_1 V2b_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (_let_2 _let_3))) (= (_let_4 ((c_2Epred__set_2EDELETE_2E2 _let_5) _let_1)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epred__set_2EDELETE_2E0)) _let_5))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V1R_2E0)) _let_6))) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ESC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27z d) (V0f_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EINVOL_2E1 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (forall ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27z))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (let ((_let_4 (_let_1 V1a_2E0))) (= (= (_let_1 (_let_3 _let_4)) _let_2) (= _let_4 (_let_1 (_let_3 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EMAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EMAP_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 Bool)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_3) _let_2) (_let_7 (i_mono_2Etyop_2Emin_2Ebool X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s _let_4) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E0)) _let_3))) _let_2))) X2)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V4x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0v_2E0 u) (V1i_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1i_2E0))) (let ((_let_3 (_let_1 V0v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0v_2E0 u) (V1i_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1i_2E0))) (let ((_let_3 (_let_1 V0v_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_3) _let_2) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESC_2E0))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27b) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eset__relation_2Etransitive_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 ((c_2Erelation_2EO_2E2 _let_3) ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) c_2Emin_2E_3D_2E0))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((s A_27b) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2Einv_2E3 _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Einv_2E0)) _let_6))) _let_2))) _let_1)))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ereflexive_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 V0R_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2EEQC_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3)))) _let_4) (= (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3)))) _let_4) (= (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 (c_2Erelation_2ESC_2E1 _let_3)))) _let_4))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u) (X4_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X4_2E0))) (let ((_let_4 (_let_2 X3_2E0))) (let ((_let_5 (_let_2 X2_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (tyop_2Emin_2Efun A_27a))) (let ((_let_9 (_let_8 _let_7))) (let ((_let_10 ((s _let_9) X1_2E0))) (let ((_let_11 (_let_8 _let_1))) (let ((_let_12 ((s _let_11) X0_2E0))) (let ((_let_13 (_let_6 _let_7))) (let ((_let_14 (_let_6 _let_13))) (let ((_let_15 ((tyop_2Emin_2Efun _let_9) _let_14))) (= (_let_2 (((((c_2Ebft_2EBFT_2E5 _let_12) _let_10) _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s _let_15) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_15)) c_2Ebft_2EBFT_2E0)) _let_12))) _let_10))) _let_5))) _let_4))) _let_3))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWeakOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EWeakOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0y_2E0)) ((s _let_1) (c_2Erelation_2ERRANGE_2E1 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V1R_2E0)))))) (exists ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_1)) V1R_2E0)) ((s A_27b) V2x_2E0)))) ((s A_27a) V0y_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) _let_3) _let_2))) (= _let_3 _let_2)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_3) _let_2))))))))))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Enum_2ESUC V0a)) V0a) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2Einv_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2Einv_2E1 _let_4)) _let_3) (= (_let_2 (c_2Erelation_2ERC_2E1 _let_4)) (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3))))) (= (_let_2 (c_2Erelation_2ERTC_2E1 _let_4)) (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 _let_3))))) (= (_let_2 (c_2Erelation_2EEQC_2E1 _let_4)) (_let_2 (c_2Erelation_2EEQC_2E1 _let_3))) (= (_let_2 (c_2Erelation_2ETC_2E1 _let_4)) (_let_2 (c_2Erelation_2Einv_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3))))) (= (_let_2 (c_2Erelation_2ESC_2E1 _let_4)) (_let_2 (c_2Erelation_2ESC_2E1 _let_3))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27c) X3_2E0))) (let ((_let_2 ((s A_27a) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_3 A_27a))) (let ((_let_8 ((s _let_7) X0_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2EpatternMatches_2EPMATCH__ROW__COND_2E4 _let_8) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2EpatternMatches_2EPMATCH__ROW__COND_2E0)) _let_8))) _let_6))) _let_2))) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((A_27a d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (app_2E2 ((s (_let_3 _let_6)) V1R_2E0)))) (let ((_let_8 (s _let_6))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_5))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 (_let_1 (_let_4 _let_5))))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27a)) V0f_2E0)))) (let ((_let_5 (_let_1 V4x_2E0))) (let ((_let_6 (c_2Erelation_2ETC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_1 (_let_4 _let_5))) (_let_1 (_let_4 _let_2)))))))))))))))) (forall ((A_27a d) (V0z_2E0 u) (V1x_2E0 u) (V2R_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V2R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2))) (or (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V2R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) (_let_1 V1x_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V0z_2E0)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))))))))))))) (forall ((A_27a d) (V0e_2E0 u) (V1L_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1L_2E0))) (let ((_let_2 ((s A_27a) V0e_2E0))) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_2) _let_1))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EUNIQUE_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eequivalence_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eequivalence_2E0)) _let_3))))))))) (forall ((A_27z d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (let ((_let_1 (s A_27z))) (let ((_let_2 (app_2E2 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))) (let ((_let_3 (_let_1 (_let_2 (_let_1 V1x_2E0))))) (= (_let_1 (_let_2 _let_3)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 ((s ((tyop_2Emin_2Efun A_27z) A_27z)) V0f_2E0)))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 (c_2Erelation_2ERC_2E1 _let_3)) (_let_2 ((c_2Erelation_2ERUNION_2E2 _let_3) (_let_2 c_2Emin_2E_3D_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ercdiamond_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ercdiamond_2E0)) _let_3))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A V0m))) (= (_let_1 (mono_2Ec_2Enum_2ESUC V1n)) ((mono_2Ec_2Earithmetic_2E_2B V0m) (_let_1 V1n))))) (forall ((A_27z d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27z) A_27z))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EINVOL_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Erelation_2EINVOL_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ERCOMPL_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ERCOMPL_2E0)) _let_4)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Erelation_2ERDOM_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Erelation_2ERDOM_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2EWFP_2E2 ((s (_let_2 _let_3)) V1R_2E0)) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) V0P_2E0)) _let_1))))))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2EWFP_2E2 ((s (_let_2 _let_3)) V1R_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) V0P_2E0)) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V1x_2E0))) (let ((_let_2 ((s A_27a) V2y_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2Einv_2E3 _let_4) _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_3))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Erelation_2EWFREC_2E3 _let_7) _let_5) _let_1)) (_let_9 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Erelation_2EWFREC_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Esymmetric_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Esymmetric_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0))) (let ((_let_4 (app_2E2 _let_3))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 ((s (_let_7 _let_8)) V0R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Erelation_2Einv__image_2E4 _let_9) _let_3) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 _let_9) (_let_5 (_let_4 _let_6))))) (_let_5 (_let_4 _let_2))))))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2k mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EMOD V0x) V1n))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V2k) ((mono_2Ec_2Earithmetic_2E_2D V1n) _let_1)) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2E_2B V0x) V2k)) V1n) ((mono_2Ec_2Earithmetic_2E_2B _let_1) V2k))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 (c_2Erelation_2ERTC_2E1 _let_3)))) (and (= (_let_2 (c_2Erelation_2ETC_2E1 (_let_2 (c_2Erelation_2ERC_2E1 _let_3)))) _let_4) (= (_let_2 (c_2Erelation_2ERC_2E1 (_let_2 (c_2Erelation_2ETC_2E1 _let_3)))) _let_4))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Erelation_2ERRESTRICT_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Erelation_2ERRESTRICT_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Eset__relation_2Ereflexive_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Eset__relation_2Ereflexive_2E0)) _let_4))) _let_2))))))))))) (= (_let_70 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2EquantHeuristics_2EGUESS__FORALL__POINT_2Emono_2Etyop_2Eone_2Eone_20mono_2Etyop_2Emin_2Ebool)) (_let_70 c_2EquantHeuristics_2EGUESS__FORALL__POINT_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2ECR_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ediamond_2E1 (_let_2 (c_2Erelation_2ERTC_2E1 _let_3))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d)) (and (forall ((V12h_2E0 u) (V13g_2E0 u) (V14f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V12h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_7 (_let_6 V13g_2E0))) (let ((_let_8 (_let_6 V14f_2E0))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 _let_8))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 _let_7))) _let_3)))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 (_let_6 ((c_2Ecombin_2Eo_2E2 _let_8) _let_7))))) _let_3))))))))))))) (forall ((V15g_2E0 u) (V16f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V15g_2E0))) (let ((_let_5 (_let_3 V16f_2E0))) (let ((_let_6 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_6) _let_6)))) (= (_let_7 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 _let_5))) (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 _let_4)))) (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))))))))))))) (forall ((V17h_2E0 u) (V18g_2E0 u) (V19f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V17h_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 A_27a)))) (let ((_let_6 (s ((tyop_2Emin_2Efun _let_5) _let_5)))) (let ((_let_7 (_let_6 V18g_2E0))) (let ((_let_8 (_let_6 V19f_2E0))) (let ((_let_9 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 _let_8))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 _let_7))) _let_3)))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_9 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 (_let_6 ((c_2Ecombin_2Eo_2E2 _let_8) _let_7))))) _let_3))))))))))))) (forall ((V10g_2E0 u) (V11f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V10g_2E0))) (let ((_let_5 (_let_3 V11f_2E0))) (let ((_let_6 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_6) _let_6)))) (= (_let_7 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 _let_5))) (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 _let_4)))) (_let_7 (c_2Esemi__ring_2Esemi__ring__SRP__fupd_2E1 (_let_3 ((c_2Ecombin_2Eo_2E2 _let_5) _let_4))))))))))))) (forall ((V7h_2E0 u) (V8g_2E0 u) (V9f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V7h_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_5 (_let_4 V8g_2E0))) (let ((_let_6 (_let_4 V9f_2E0))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 _let_6))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 _let_5))) _let_3)))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 (_let_4 ((c_2Ecombin_2Eo_2E2 _let_6) _let_5))))) _let_3))))))))))) (forall ((V5g_2E0 u) (V6f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_2 (_let_1 V5g_2E0))) (let ((_let_3 (_let_1 V6f_2E0))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 _let_3))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SR1__fupd_2E1 (_let_1 ((c_2Ecombin_2Eo_2E2 _let_3) _let_2))))))))))) (forall ((V2h_2E0 u) (V3g_2E0 u) (V4f_2E0 u)) (let ((_let_1 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 (_let_2 V2h_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_5 (_let_4 V3g_2E0))) (let ((_let_6 (_let_4 V4f_2E0))) (let ((_let_7 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 _let_6))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 _let_5))) _let_3)))) (_let_2 ((c_2Ecombin_2Eo_2E2 (_let_7 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 (_let_4 ((c_2Ecombin_2Eo_2E2 _let_6) _let_5))))) _let_3))))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27a)))) (let ((_let_2 (_let_1 V0g_2E0))) (let ((_let_3 (_let_1 V1f_2E0))) (let ((_let_4 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) _let_4)))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 _let_3))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 _let_2)))) (_let_5 (c_2Esemi__ring_2Esemi__ring__SR0__fupd_2E1 (_let_1 ((c_2Ecombin_2Eo_2E2 _let_3) _let_2))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1B_2E0 u)) (=> (exists ((V2w_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)) ((s A_27a) V2w_2E0))))) (exists ((V3min_2E0 u)) (and (forall ((V4b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V3min_2E0)))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1B_2E0)) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1B_2E0)) ((s A_27a) V3min_2E0)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool) Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOWEST__SET__BIT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0n))) (mono_2Ec_2Enum_2ESUC (mono_2Ec_2Ebit_2ELOWEST__SET__BIT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Enum_2ESUC V0n)))))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Ebit_2ELOWEST__SET__BIT (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V1n))) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0x_2E0 u) (V1B_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V2P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1B_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s _let_1) (c_2Epred__set_2EBIGINTER_2E1 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1B_2E0))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V4x_2E0 u) (V5y_2E0 u) (V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V5y_2E0))) (let ((_let_11 (_let_6 V0R_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_7 ((app_2E2 _let_11) _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ETC_2E3 _let_11) _let_3) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2)))))))))))))))) (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V7u_2E0 u) (V8v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8v_2E0))) (let ((_let_3 (_let_1 V7u_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27g d) (A_27h d) (A_27k d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27k) X3_2E0))) (let ((_let_2 ((s A_27g) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27h))) (let ((_let_4 (tyop_2Emin_2Efun A_27g))) (let ((_let_5 (_let_4 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27k) tyop_2Emin_2Ebool))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_4 _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Erelation_2EO_2E4 _let_9) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) c_2Erelation_2EO_2E0)) _let_9))) _let_6))) _let_2))) _let_1))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (and (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 ((c_2Erelation_2ERTC_2E3 _let_5) (_let_1 V2x_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V3y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_8))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2))))))))))))) (forall ((V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1) _let_1)))))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongOrder_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Estring_2Echar) _let_1)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 _let_3))) _let_3))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 _let_1))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_3)) (_let_2 _let_3))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) V0))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2ECR_2E1 _let_2))))) (and (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ediamond_2E1 _let_2))) _let_4) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Ercdiamond_2E1 _let_2))) _let_4))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongOrder_2E1 (_let_2 (c_2Erelation_2ESTRORD_2E1 _let_3))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) ((tyop_2Epair_2Eprod A_27c) A_27b)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 _let_4))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 (_let_2 ((c_2Erelation_2EO_2E2 _let_3) _let_3))) _let_3))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) ((mono_2Ec_2Earithmetic_2EEXP V0x) V1n)))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2EIN_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (and (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V1P_2E0)) _let_1))) _let_1))))))) (forall ((V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (app_2E2 (_let_6 V1P_2E0)))) (let ((_let_8 (s _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_10))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 V0R_2E0)) _let_3))) _let_10)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_8 (_let_7 _let_3))) _let_2)))))))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V7y_2E0))) (let ((_let_3 (_let_1 V6x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 (_let_6 V0R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 (_let_6 V1P_2E0)) _let_3))) _let_2)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Emin_2Ebool))) (_let_1 (_let_1 (_let_1 tyop_2Enum_2Enum))))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0R2_2E0 u) (V1R1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R2_2E0))) (let ((_let_4 (_let_2 V1R1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2Etransitive_2E1 (_let_2 ((c_2Erelation_2ERINTER_2E2 _let_4) _let_3)))))))))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_6 (_let_1 _let_5))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Erelation_2EO_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Erelation_2EO_2E0)) _let_7))) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0s_2E0))) (let ((_let_4 (_let_1 A_27b))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_4) V1f_2E0)) ((s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EFUNSET_2E2 _let_3) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EEMPTY_2E0)))))) (= _let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1s_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V2R_2E0))) (let ((_let_4 (s (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_5 (c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (_let_4 V1s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Erelation_2ERDOM_2E1 (_let_2 ((c_2Erelation_2ERRESTRICT_2E2 _let_3) _let_7))))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 (c_2Erelation_2ERDOM_2E1 _let_3))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erelation_2EWFP_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s A_27a) V1a_2E0)))) (forall ((V2P_2E0 u)) (=> (forall ((V3x_2E0 u)) (=> (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V3x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V2P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27a) V3x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27a) V1a_2E0))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (= (_let_3 (c_2Erelation_2ESC_2E1 _let_4)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Erelation_2ESC_2E0)) _let_4)))))))) (forall ((A_27a d) (A_27b d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (c_2Erich__list_2EELL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0))) (let ((_let_5 (s A_27b))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1)))) (= (_let_5 (_let_3 ((s (tyop_2Elist_2Elist A_27b)) ((c_2Elist_2EMAP_2E2 _let_4) _let_1)))) (_let_5 ((app_2E2 _let_4) ((s A_27a) (_let_3 _let_1)))))))))))) (and (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB V0f) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V1f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V2n))) (= ((mono_2Ec_2Enumeral__bit_2EFDUB V1f) _let_1) (V1f (V1f _let_1)))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2R_2E0 u) (V3Q_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s (_let_4 (_let_4 tyop_2Emin_2Ebool))))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (_let_1 V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s (_let_4 _let_5)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V2R_2E0)) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_6 V3Q_2E0)) _let_3))) _let_2))))))))))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERC_2E3 (_let_5 V2R_2E0)) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERC_2E3 (_let_5 V3Q_2E0)) _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_1 _let_2))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Erelation_2EO_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Erelation_2EO_2E0)) _let_7))) _let_5)))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b2_2E0))) (let ((_let_3 (_let_1 V0b1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_2)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0b1_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1b2_2E0))))))))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Erelation_2Enf_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2Enf_2E0)) _let_4))) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0R_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (=> (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) (_let_1 V2x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V1P_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2EWFP_2E2 ((s (_let_2 _let_3)) V0R_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s _let_3) V1P_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0r_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Esemi__ring_2Eis__semi__ring_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (forall ((V1m_2E0 u) (V2n_2E0 u) (V3p_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2n_2E0))) (let ((_let_3 (_let_1 V3p_2E0))) (let ((_let_4 (c_2Esemi__ring_2Esemi__ring__SRM_2E3 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0r_2E0)))) (let ((_let_5 (_let_4 (_let_1 V1m_2E0)))) (= (_let_1 ((_let_4 (_let_1 (_let_5 _let_2))) _let_3)) (_let_1 ((_let_4 (_let_1 (_let_5 _let_3))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0ls mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (forall ((V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V1x) (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum V0ls)) (= V1x mono_2Ec_2Enum_2E0))) (= (mono_2Ec_2Elist_2ESUM V0ls) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (c_2Epred__set_2EPSUBSET_2E2 (_let_1 V0s_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EPSUBSET_2E2 _let_5) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 A_27b))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 (_let_2 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_6 (((c_2Erelation_2ERESTRICT_2E3 _let_7) _let_4) _let_1)) (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Erelation_2ERESTRICT_2E0)) _let_7))) _let_4))) _let_1))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27a)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eoption_2EIS__SOME_2E1 ((s (tyop_2Eoption_2Eoption A_27b)) ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V1f_2E0)) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Eoption_2EIS__SOME_2E1 _let_1))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_1 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Erelation_2Einv_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Erelation_2Einv_2E0)) _let_4)))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))))) (let ((_let_4 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_3) (= (_let_4 ((c_2Erich__list_2EELL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_1)) (_let_4 ((c_2Elist_2EEL_2E2 (_let_2 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_3) V0n))))) _let_1))))))))) (forall ((A_27a d) (V0A_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s (_let_1 _let_2)))) (let ((_let_4 (_let_3 (c_2Erelation_2Ediag_2E1 ((s _let_2) V0A_2E0))))) (= (_let_3 (c_2Erelation_2Einv_2E1 _let_4)) _let_4)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V4y_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_9 (_let_5 _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_4))) _let_3)) (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27b) ((app_2E2 _let_7) _let_4))) _let_3))))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u) (V2a_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2a_2E0))) (let ((_let_4 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (_let_5 ((tyop_2Emin_2Efun _let_1) _let_1)))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) F0_2E0)) _let_7))) _let_3) _let_4)) (_let_2 ((c_2Elist_2EAPPEND_2E2 (_let_2 ((c_2Elist_2EMAP_2E2 _let_7) _let_4))) _let_3)))))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongOrder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EOrder_2E1 _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2Erelation_2EO_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2EO_2E0)) _let_5))) _let_4))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Erelation_2EINVOL_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) c_2Erelation_2EINVOL_2E0)) _let_4)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (mono_2Ec_2Erelation_2EINVOL_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_7E) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x2_2E0 u) (V2x1_2E0 u) (V3w2_2E0 u) (V4w1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x2_2E0))) (let ((_let_3 (_let_1 V2x1_2E0))) (let ((_let_4 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) V4w1_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Ewellorder_2EelsOf_2E1 _let_4)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_8 (_let_7 (c_2Eoption_2ESOME_2E1 ((s A_27b) V0y_2E0))))) (let ((_let_9 ((c_2Ewellorder_2Ewo2wo_2E3 _let_4) ((s (tyop_2Ewellorder_2Ewellorder A_27b)) V3w2_2E0)))) (=> (and (= (_let_7 (_let_9 _let_3)) _let_8) (= (_let_7 (_let_9 _let_2)) _let_8) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_2) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_3) _let_5)))) (= _let_3 _let_2)))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0)))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((A_27a d) (V0w_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s (tyop_2Ewellorder_2Ewellorder A_27a)))) (let ((_let_3 (_let_2 V0w_2E0))) (= (= _let_3 (_let_2 c_2Ewellorder_2EwZERO_2E0)) (= (_let_1 (c_2Ewellorder_2EelsOf_2E1 _let_3)) (_let_1 c_2Epred__set_2EEMPTY_2E0))))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eirreflexive_2E0)) _let_3))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (_let_2 c_2Erelation_2EEMPTY__REL_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (= (= _let_3 _let_4) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Erelation_2ERSUBSET_2E2 _let_3) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Erelation_2ERSUBSET_2E2 _let_4) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (_let_2 A_27b))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) V1M_2E0))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s A_27b))) (= (_let_7 (((c_2Erelation_2EWFREC_2E3 _let_3) _let_5) _let_1)) (_let_7 ((app_2E2 (_let_6 ((app_2E2 _let_5) (_let_6 (((c_2Erelation_2ERESTRICT_2E3 (_let_6 ((c_2Erelation_2EWFREC_2E2 _let_3) _let_5))) _let_3) _let_1))))) _let_1)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Eoption_2EOPTION__CHOICE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Eoption_2EOPTION__CHOICE_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1M_2E0 u) (V0R_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_4 (tyop_2Emin_2Efun _let_2))) (let ((_let_5 (_let_4 _let_2))) (let ((_let_6 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_6))) (= (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V2f_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 ((app_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V1M_2E0)) (_let_4 (((c_2Erelation_2ERESTRICT_2E3 _let_5) ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1))))) _let_1)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) ((s _let_5) V1M_2E0)))) ((s _let_3) V0R_2E0)))) ((s _let_2) V2f_2E0))))))))))))) (forall ((V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_1 A_27b))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) ((s _let_5) V1M_2E0)))) ((s _let_2) V0R_2E0))))))))))))))))))) (forall ((A_27g d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27g))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EOrder_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1x_2E0 u) (V2u_2E0 u) (V3v_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V2u_2E0))) (let ((_let_4 ((s A_27b) V3v_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((((c_2Erelation_2ERDOM__DELETE_2E4 _let_6) _let_2) _let_3) _let_4))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_4))) (not (= _let_3 _let_2)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (= (_let_3 ((c_2Erelation_2ERINTER_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Erelation_2ERINTER_2E0)) _let_5))) _let_4))))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1q mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (=> (and (_let_1 V0p) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1q)) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0p) V1q))))) (forall ((A_27z d) (V0f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27z) A_27z)))) (let ((_let_2 (_let_1 V0f_2E0))) (= (= (_let_1 ((c_2Ecombin_2Eo_2E2 _let_2) _let_2)) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EIDEM_2E1 _let_2))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0R_2E0 u) (V1M_2E0 u) (V2x_2E0 u) (V3f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) V3f_2E0))) (let ((_let_4 ((s A_27a) V2x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 (_let_5 _let_2))) (let ((_let_7 ((s _let_6) V1M_2E0))) (let ((_let_8 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_9 ((s _let_8) V0R_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_1 _let_11))) (let ((_let_13 ((tyop_2Emin_2Efun _let_6) _let_12))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_13)) F0_2E0)) _let_9))) _let_7))) _let_4))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Erelation_2Eapprox_2E4 _let_9) _let_7) _let_4) _let_3)))))))))))))))))) (forall ((V0R_2E0 u) (V1M_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V1M_2E0))) (let ((_let_7 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_8 ((s _let_7) V0R_2E0))) (let ((_let_9 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_2 _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (let ((_let_12 (s _let_3))) (= (_let_12 (((c_2Erelation_2Ethe__fun_2E3 _let_8) _let_6) _let_1)) (_let_12 (c_2Emin_2E_40_2E1 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_11)) F0_2E0)) _let_8))) _let_6))) _let_1)))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Erelation_2EO_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Erelation_2EO_2E0)) _let_6))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_1 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Epred__set_2EINSERT_2E3 _let_7) _let_6) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_5 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) c_2Epred__set_2EINSERT_2E0)) _let_7))) _let_6))) _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (V0R3_2E0 u) (V1R2_2E0 u) (V2R1_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0R3_2E0))) (let ((_let_3 (_let_1 V1R2_2E0))) (let ((_let_4 (c_2Erelation_2ERINTER_2E2 (_let_1 V2R1_2E0)))) (= (_let_1 (_let_4 (_let_1 ((c_2Erelation_2ERINTER_2E2 _let_3) _let_2)))) (_let_1 ((c_2Erelation_2ERINTER_2E2 (_let_1 (_let_4 _let_3))) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V0s_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Epred__set_2ESUBSET_2E2 _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (or (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Esemi__ring_2Esemi__ring A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_5))) (let ((_let_7 (s _let_6))) (= (_let_7 (c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E1 _let_4)) (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E0)) _let_4))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Esymmetric_2E1 _let_3))) (= (_let_2 (c_2Erelation_2Einv_2E1 _let_3)) _let_3)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EStrongOrder_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2EStrongOrder_2E0)) _let_3))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 X0_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Erelation_2ESC_2E3 _let_8) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_5) ((app_2E2 (_let_7 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_6)) c_2Erelation_2ESC_2E0)) _let_8))) _let_3))) _let_2)))))))))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 c_2Emin_2E_3D_2E0))) (= (_let_2 (c_2Erelation_2Einv_2E1 _let_3)) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (= (_let_69 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Erelation_2EINVOL_2Emono_2Etyop_2Emin_2Ebool)) (_let_69 c_2Erelation_2EINVOL_2E0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1R_2E0 u)) (=> (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V2x_2E0))) (let ((_let_7 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V1R_2E0)) _let_6))) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2)))))))))))) (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (app_2E2 ((s (_let_3 A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_1 V4x_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ETC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V1R_2E0)) _let_6) _let_2))) (= (_let_5 (_let_4 _let_6)) (_let_5 (_let_4 _let_2))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ellist_2ELTL_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ellist_2ELTL_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ETC_2E3 _let_6) _let_3) _let_2))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (exists ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_2))) (_let_1 V2z_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ETC_2E3 _let_5) (_let_1 V1x_2E0)) _let_2))))))))))))))))))))) (forall ((A_27a d) (V0s_27_2E0 u) (V1s_2E0 u) (V2f_2E0 u) (V3G_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0s_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V3G_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_5 (((c_2Ewhile_2EOWHILE_2E3 _let_4) ((s (_let_3 A_27a)) V2f_2E0)) (_let_1 V1s_2E0))) (_let_5 (c_2Eoption_2ESOME_2E1 _let_2))) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_4) _let_2))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (= (_let_2 (c_2Erelation_2ESTRORD_2E1 _let_3)) (_let_2 ((c_2Erelation_2ERINTER_2E2 _let_3) (_let_2 (c_2Erelation_2ERCOMPL_2E1 (_let_2 c_2Emin_2E_3D_2E0)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_3E_3D V1m) V0n) ((mono_2Ec_2Earithmetic_2E_3C_3D V0n) V1m))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0R_2E0)) (_let_1 V1x_2E0)))))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V3z_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 (_let_1 V2y_2E0))))) (exists ((V4u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (c_2Erelation_2ERC_2E3 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V2y_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((_let_4 (_let_1 V3z_2E0)) _let_2))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Ercdiamond_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_2 (_let_2 tyop_2Enum_2Enum))) tyop_2Enum_2Enum)) (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((A_27a d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Eone_2Eone)))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0)))) (= (_let_67 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_67 c_2Ecombin_2Eo_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (s tyop_2Eone_2Eone))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Eone_2Eone V0))) (_let_1 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1l_27 mono_2Etyop_2Enum_2Enum) (V2x_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1l_27))))) ((s A_27a) V2x_2E0)))) (mono_2Ec_2Enum_2ESUC V1l_27))))) (forall ((V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Elist_2ELENGTH_2E1 _let_1))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) F0_2E0)) (_let_2 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_1))))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V1l))) (let ((_let_2 ((mono_2Ec_2Earithmetic_2E_2A V2a) _let_1))) (let ((_let_3 ((mono_2Ec_2Ebit_2EBITS V0h) V1l))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3b) _let_1) (= (_let_3 ((mono_2Ec_2Earithmetic_2E_2B _let_2) V3b)) (_let_3 _let_2))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1x mono_2Etyop_2Enum_2Enum)) (((mono_2Ec_2Earithmetic_2EMODEQ V0n) V1x) V1x)) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V7t mono_2Etyop_2Enum_2Enum)) (= (((F2 V1a) V0b) V7t) (or (V0b V7t) (V1a V7t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V5t mono_2Etyop_2Enum_2Enum)) (= (and (V1a V5t) (V0b V5t)) (((F1 V1a) V0b) V5t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0b))) (let ((_let_2 (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a))) (let ((_let_3 (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0b))) (and (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F1 V1a) V0b)) V4x) (and ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a) V4x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0b) V4x)))) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V8x) (V1a V8x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2ETemporal__Logic_2ENEXT V1a)) V8x))) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESUNTIL _let_2) _let_1)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EUNTIL _let_2) _let_1)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EWHEN _let_2) _let_1)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2EBEFORE _let_2) _let_3)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a)) (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS _let_2)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) V0b)) ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL _let_2) _let_1)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V0b)) ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE _let_2) _let_3)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V0b)) ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN _let_2) _let_1)) (forall ((V14x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V0b)) V14x) (or (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1a)) (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0b)) V14x) (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V14x)))) (forall ((V13x mono_2Etyop_2Enum_2Enum)) (= (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V13x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a)) (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0b)) V13x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) V0b)) V13x))) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V0b)) V12x) (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V12x) (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a)) (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V0b)) V12x)))) (forall ((V11x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a)) V11x) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL (mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1a)) V11x) (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V11x)))) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE _let_2) _let_3)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b)) ((mono_2Ec_2ETemporal__Logic_2ESWHEN _let_2) _let_1)) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= (or (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V10x) ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a)) V10x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a)) V10x))) (forall ((V9x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a)) V9x) (or ((mono_2Ec_2ETemporal__Logic_2EALWAYS (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a)) V9x) (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V9x)))) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT ((F2 V1a) V0b)) V6x) (or ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V1a) V6x) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT V0b) V6x)))) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= (not ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT V1a) V2x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT (F0 V1a)) V2x)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2EABS__DIFF ((mono_2Ec_2Earithmetic_2E_2B V0n) V2p)) ((mono_2Ec_2Earithmetic_2E_2B V1m) V2p)) ((mono_2Ec_2Earithmetic_2EABS__DIFF V0n) V1m))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etransitive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etransitive_2E0)) _let_3))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((F0 (-> Bool Bool))) (=> (forall ((V1b Bool)) (= (F0 V1b) V1b)) (exists ((V0rep (-> mono_2Etyop_2Eone_2Eone Bool))) ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eone_2Eone F0) V0rep)))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V6x_2E0 u) (V7t_27 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V7t_27)))) (let ((_let_3 ((s A_27a) V6x_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_4) _let_1))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_7 (s _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_6))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_8)) F2_2E0)) _let_3))) _let_2)) (_let_7 (c_2Eoption_2ESOME_2E1 ((s _let_5) ((c_2Epair_2E_2C_2E2 ((s _let_4) (c_2Eoption_2ESOME_2E1 _let_3))) _let_2)))))))))))))) (=> (forall ((V5v_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_4 ((s _let_3) V5v_2E0))) (let ((_let_5 (s _let_2))) (= (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) F1_2E0)) _let_4)) (_let_5 ((c_2Epair_2Epair__CASE_2E2 _let_4) ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2))) F2_2E0)))))))))) (=> (forall ((V2d_2E0 u) (V3v1 Bool) (V4t mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V4t)))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_8 (tyop_2Eoption_2Eoption _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_1))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 ((s _let_10) V2d_2E0))) (let ((_let_12 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V3v1)))) (let ((_let_13 (_let_9 _let_5))) (let ((_let_14 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_13))) (= (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_10) _let_14)) F0_2E0)) _let_11))) _let_12))) _let_2)) (_let_6 (((c_2Ebool_2ECOND_2E3 _let_12) (_let_6 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_8) ((app_2E2 _let_11) _let_2))) (_let_6 c_2Eoption_2ENONE_2E0)) ((s ((tyop_2Emin_2Efun _let_7) _let_5)) F1_2E0)))) (_let_6 (c_2Eoption_2ESOME_2E1 ((s _let_4) ((c_2Epair_2E_2C_2E2 ((s _let_3) c_2Eoption_2ENONE_2E0)) _let_2)))))))))))))))))))))) (forall ((V0p_2E0 u) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V2d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_4 ((s _let_3) V2d_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 _let_6)))) (let ((_let_8 (s _let_6))) (let ((_let_9 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1l)))) (let ((_let_10 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EDecode_2Ewf__decoder_2E2 _let_10) _let_4))) (= (_let_8 (((c_2EDecode_2Edecode__option_2E3 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__option_2E1 _let_10))) _let_4) _let_9)) (_let_8 (((c_2Elist_2Elist__CASE_2E3 _let_9) (_let_8 c_2Eoption_2ENONE_2E0)) ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))))))))))))))))))))) (forall ((V0l mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2Ebit_2ESLICE V1h) V0l) mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Eone_2Eone_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0l mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V3i mono_2Etyop_2Enum_2Enum)) (= (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0l) V1h) ((mono_2Ec_2Eprim__rec_2E_3C V3i) V0l)) (((F0 V0l) V1h) V3i))) (=> (forall ((V3i mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V0l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Ebit_2EBIT ((mono_2Ec_2Earithmetic_2E_2D V0l) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V2n) ((mono_2Ec_2Eprim__rec_2E_3C V3i) V1h)) ((((F1 V3i) V1h) V0l) V2n))) (forall ((V0l mono_2Etyop_2Enum_2Enum) (V1h mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Ebit_2EBIT V3i))) (=> (not (= V0l mono_2Ec_2Enum_2E0)) (= (_let_1 (((mono_2Ec_2Ebit_2ESIGN__EXTEND V0l) V1h) V2n)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (((F0 V0l) V1h) V3i)) (_let_1 ((mono_2Ec_2Earithmetic_2EMOD V2n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0l)))) ((((F1 V3i) V1h) V0l) V2n))))))))) (forall ((V0 (-> Bool Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eone_2Eone V0) V1))) (_let_1 ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V1))))))))) (forall ((A_27a d) (V0b2_2E0 u) (V1b1_2E0 u) (V2R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0b2_2E0))) (let ((_let_5 (_let_3 V1b1_2E0))) (let ((_let_6 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V2R_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 ((c_2Erelation_2ETC_2E3 ((s (_let_7 (_let_7 tyop_2Emin_2Ebool))) (c_2Ebag_2Emlt1_2E1 _let_6))) _let_5))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebag_2EFINITE__BAG_2E1 _let_4))) (not (= _let_4 (_let_3 c_2Ebag_2EEMPTY__BAG_2E0))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Ebag_2EFINITE__BAG_2E1 _let_5)))))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_9 (c_2Erelation_2EWF_2E1 _let_6))) (and (= _let_10 (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_4) _let_5)))))) (= _let_10 (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_3 ((c_2Ebag_2EBAG__UNION_2E2 _let_5) _let_4))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0e_2E0 u) (V1fn_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (let ((_let_2 ((s _let_1) V1fn_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V0e_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (= (_let_3 ((app_2E2 _let_2) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))) _let_4) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) F0_2E0)) _let_4))) _let_2)))))))))) (forall ((V0e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a)) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) F0_2E0)) ((s A_27a) V0e_2E0)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Eone_2Eone)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 _let_2))) _let_2)))) (forall ((A_27a d)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (= (_let_1 (c_2Ellist_2ELREPEAT_2E1 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0))) (_let_1 c_2Ellist_2ELNIL_2E0)))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d)) (and (forall ((V4a_2E0 u) (V5a0_2E0 u) (V6f_2E0 u) (V7f0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5a0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 A_27a))))) (= (_let_1 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_1 V4a_2E0)) _let_2) (_let_4 V6f_2E0)) (_let_4 V7f0_2E0))))) _let_2)))))) (forall ((V12a_2E0 u) (V13a0_2E0 u) (V14f_2E0 u) (V15f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_2 V15f0_2E0))) (let ((_let_4 (s A_27a))) (= (_let_2 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_4 V12a_2E0)) (_let_4 V13a0_2E0)) (_let_2 V14f_2E0)) _let_3)))) _let_3)))))) (forall ((V8a_2E0 u) (V9a0_2E0 u) (V10f_2E0 u) (V11f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_2 V10f_2E0))) (let ((_let_4 (s A_27a))) (= (_let_2 (c_2Esemi__ring_2Esemi__ring__SRP_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_4 V8a_2E0)) (_let_4 V9a0_2E0)) _let_3) (_let_2 V11f0_2E0))))) _let_3)))))) (forall ((V0a_2E0 u) (V1a0_2E0 u) (V2f_2E0 u) (V3f0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0a_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 A_27a))))) (= (_let_1 (c_2Esemi__ring_2Esemi__ring__SR0_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_2) (_let_1 V1a0_2E0)) (_let_4 V2f_2E0)) (_let_4 V3f0_2E0))))) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_3C_3D V1m))) (let ((_let_2 (or (= V1m mono_2Ec_2Enum_2E0) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0n)))) (and (= _let_2 (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1m) V0n))) (= _let_2 (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V0n) V1m))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Ecombin_2EK_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Ecombin_2EK_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 (j_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (_let_3 tyop_2Enum_2Enum)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2EEncode_2Etree A_27a)))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EEncode_2Ewf__encoder_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2EEncode_2Ewf__encoder_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0 mono_2Etyop_2Eone_2Eone) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone X0)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27a))) (= (_let_1 ((c_2Eone_2Eone__CASE_2E2 _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_4)) c_2Eone_2Eone__CASE_2E0)) _let_3))) _let_2)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u) (F1_2E0 u)) (=> (forall ((V0i_2E0 u) (V1xxx mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) F0_2E0)) _let_2))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1xxx)))) _let_2))))) (=> (forall ((V0i_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0i_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_2))) _let_3))) (= _let_3 _let_2)))))))) (forall ((V0i_2E0 u)) (let ((_let_1 ((s A_27a) V0i_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 ((s _let_4) ((app_2E2 ((s (_let_2 _let_4)) F0_2E0)) _let_1))) ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) F1_2E0)) _let_1))))))))))))) (= (_let_65 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eone_2Eone)) (_let_65 c_2Ebool_2ETYPE__DEFINITION_2E0)) (forall ((V0r mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0r) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))) (= (mono_2Ec_2Estring_2EORD (mono_2Ec_2Estring_2ECHR V0r)) V0r))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Eprim__rec_2EPRE V0m)) (mono_2Ec_2Eprim__rec_2EPRE V1n)))) (forall ((A_27a d) (V0e_2E0 u)) (exists ((V1fn_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a)) V1fn_2E0)) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone)))) (_let_1 V0e_2E0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0u mono_2Etyop_2Eone_2Eone) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((c_2Eone_2Eone__CASE_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0u))) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((c_2Ecardinal_2Ecardeq_2E2 _let_3) _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2Ecountable_2E1 _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Eone_2Eone)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Eone_2Eone))) (= (_let_2 (i_mono_2Etyop_2Eone_2Eone (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Eone_2Eone)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> Bool mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Estring_2Echar)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Eoption_2ETHE_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Eoption_2ETHE_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0P (-> mono_2Etyop_2Eone_2Eone Bool))) (=> (V0P mono_2Ec_2Eone_2Eone) (forall ((V1x mono_2Etyop_2Eone_2Eone)) (V0P V1x)))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1C_2E0 u) (V2Q_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Ewhile_2EHOARE__SPEC_2E3 ((s (_let_1 tyop_2Emin_2Ebool)) V0P_2E0)) ((s (_let_1 A_27b)) V1C_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0)))) (forall ((V3s_2E0 u)) (let ((_let_1 ((s A_27a) V3s_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2Q_2E0)) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V1C_2E0)) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V1b_2E0))) (not (= (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V0x_2E0)) _let_2)) _let_2))))) (forall ((V0lo mono_2Etyop_2Enum_2Enum) (V1hi mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0lo) V1hi) (= ((mono_2Ec_2ElistRange_2ElistRangeLHI V0lo) V1hi) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0lo) ((mono_2Ec_2ElistRange_2ElistRangeLHI ((mono_2Ec_2Earithmetic_2E_2B V0lo) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) V1hi))))) (forall ((A_27a d) (V0x_2E0 u) (V1ls_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1ls_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V0x_2E0))) (let ((_let_8 (c_2Ebool_2EIN_2E2 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) _let_2))))))) (and ((mono_2Ec_2Eprim__rec_2E_3C V2n) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= _let_7 (_let_6 ((c_2Elist_2EEL_2E2 _let_4) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Elist_2EDROP_2E2 _let_4) _let_2)))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist (tyop_2EEncode_2Etree A_27a)))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2EEncode_2Etree1__size_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EEncode_2Etree1__size_2E0)) _let_4))) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP V2b))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) V0n) ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2b)) ((mono_2Ec_2Earithmetic_2E_3C_3D (_let_1 V1m)) (_let_1 V0n))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Ellist_2ELCONS_2E0)) _let_5))) _let_4)))))))))) (forall ((V0lo mono_2Etyop_2Enum_2Enum) (V1hi mono_2Etyop_2Enum_2Enum)) (mono_2Ec_2Elist_2EALL__DISTINCT_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2ElistRange_2ElistRangeLHI V0lo) V1hi))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) Bool)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0P (-> mono_2Etyop_2Eone_2Eone Bool))) (= (V0P mono_2Ec_2Eone_2Eone) (forall ((V1x mono_2Etyop_2Eone_2Eone)) (V0P V1x)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0v mono_2Etyop_2Eone_2Eone)) (= V0v mono_2Ec_2Eone_2Eone)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Eone_2Eone__CASE_2E2 ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone mono_2Ec_2Eone_2Eone))) _let_2)) _let_2)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u) (V1f_2E0 u) (V2m mono_2Etyop_2Enum_2Enum) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (c_2Earithmetic_2EFUNPOW_2E3 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) V1f_2E0)))) (= (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V2m) V3n)))) _let_2)) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2m))) (_let_1 ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum V3n))) _let_2)))))))))) (forall ((F0 (-> mono_2Etyop_2Eone_2Eone Bool))) (=> (forall ((V0x mono_2Etyop_2Eone_2Eone)) (= (F0 V0x) mono_2Ec_2Ebool_2ET)) (= mono_2Ec_2Eone_2Eone (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Eone_2Eone F0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist _let_1)) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) ((mono_2Ec_2Earithmetic_2E_2B V0m) V1n))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2ELIST__TO__SET_2E0)) _let_2)))))))) (= (_let_62 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Eone_2Eone)) (_let_62 c_2Emin_2E_40_2E0)) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (or (mono_2Ec_2Estring_2EisUpper V0c) (mono_2Ec_2Estring_2EisLower V0c)) (mono_2Ec_2Estring_2EisAlpha V0c))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1n mono_2Etyop_2Enum_2Enum) (V2i mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2i))) (let ((_let_2 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0s))) (let ((_let_3 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 V2i))) (let ((_let_4 (mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29 V0s))) (and (= (mono_2Ec_2Estring_2EEXTRACT (_let_4 (_let_3 mono_2Ec_2Eoption_2ENONE_2Emono_2Etyop_2Enum_2Enum))) (mono_2Ec_2Estring_2ESUBSTRING (_let_2 (_let_1 ((mono_2Ec_2Earithmetic_2E_2D (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0s)) V2i))))) (= (mono_2Ec_2Estring_2EEXTRACT (_let_4 (_let_3 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Enum_2Enum V1n)))) (mono_2Ec_2Estring_2ESUBSTRING (_let_2 (_let_1 V1n)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 A_27b)) V0f_2E0))) (let ((_let_6 (c_2Elist_2EMAP_2E2 _let_5))) (let ((_let_7 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_8 (s (_let_4 tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 _let_5) (_let_8 ((c_2Epred__set_2EUNION_2E2 (_let_8 (c_2Elist_2ELIST__TO__SET_2E1 _let_3))) (_let_8 (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (= (_let_7 (_let_6 _let_3)) (_let_7 (_let_6 _let_2)))) (= _let_3 _let_2))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> Bool Bool) (-> mono_2Etyop_2Eone_2Eone Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Eone_2Eone)) (V1 (-> mono_2Etyop_2Eone_2Eone Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) V0))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum) (V3b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Ebit_2EBITS V0h) V1l))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V2a) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Enum_2ESUC V0h)))) V3b)) (_let_1 V3b)))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ewellorder_2Eorderiso_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ewellorder_2Eorderiso_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Eone_2Eone Bool) mono_2Etyop_2Eone_2Eone))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) tyop_2Eone_2Eone)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Eone_2Eone_29 V0))) V0)) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 ((mono_2Ec_2Earithmetic_2E_2B V1i) V0n))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1i)))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_3) (j_mono_2Etyop_2Enum_2Enum (_let_4 (c_2Elist_2ELENGTH_2E1 _let_2)))) (= (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_5) _let_2))) (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_5) _let_2))))) (_let_1 ((c_2Elist_2EDROP_2E2 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)))) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) c_2Ebag_2EEMPTY__BAG_2E0))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ecardinal_2Ecardeq_2E0)) _let_5))) _let_4)))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ewellorder_2Ewellorder_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Ewellorder_2Ewellorder_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Enum_2Enum_29 V0))) V0)) (= (_let_58 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Emin_2Ebool)) (_let_58 c_2Elist_2ECONS_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1p mono_2Etyop_2Enum_2Enum) (V2q mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V2q) (= (exists ((V3k mono_2Etyop_2Enum_2Enum) (V4r mono_2Etyop_2Enum_2Enum)) (and (= V1p ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2A V3k) V2q)) V4r)) (V0P V4r) ((mono_2Ec_2Eprim__rec_2E_3C V4r) V2q))) (V0P ((mono_2Ec_2Earithmetic_2EMOD V1p) V2q))))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Epred__set_2EDIFF_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDIFF_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebit_2EBITV V0n) V1b) (((mono_2Ec_2Ebit_2EBITS V1b) V1b) V0n))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (= (_let_56 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2EEncode_2Ewf__pred_2Emono_2Etyop_2Enum_2Enum)) (_let_56 c_2EEncode_2Ewf__pred_2E0)) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 V0))) ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 V1))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u) (V1n1 mono_2Etyop_2Enum_2Enum) (V2n2 mono_2Etyop_2Enum_2Enum)) (= (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))) ((mono_2Ec_2Earithmetic_2E_2B V1n1) V2n2)) (exists ((V3l1_2E0 u) (V4l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V4l2_2E0))) (and (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4))) V2n2) (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) V1n1))))))))) (forall ((V0y mono_2Etyop_2Emin_2Eind)) (not (= mono_2Ec_2Enum_2EZERO__REP (mono_2Ec_2Enum_2ESUC__REP V0y)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0))) (_let_1 (c_2Ebool_2EONE__ONE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (= (_let_54 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (_let_54 c_2Epair_2E_2C_2E0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1s_2E0)))))) (and (forall ((V2x_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINL_2E1 ((s A_27a) V2x_2E0)))))))) (forall ((V3y_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) (c_2Esum_2EINR_2E1 ((s A_27b) V3y_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 mono_2Etyop_2Eone_2Eone)) (= (j_mono_2Etyop_2Eone_2Eone ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0x) (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2ElistRange_2ElistRangeLHI V2m) V1n))) (and ((mono_2Ec_2Eprim__rec_2E_3C V0x) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) V0x)))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (V0P mono_2Ec_2Enum_2E0) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (=> (V0P V1n) (V0P (mono_2Ec_2Enum_2ESUC V1n))))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (V0P V2n)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1w_2E0 u) (V2y_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 ((s _let_1) V1w_2E0))) (let ((_let_3 (tyop_2Epair_2Eprod A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)))) (let ((_let_6 (s A_27a))) (let ((_let_7 (_let_6 V0x_2E0))) (let ((_let_8 (_let_6 V2y_2E0))) (let ((_let_9 (c_2Epair_2E_2C_2E2 _let_8))) (let ((_let_10 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_11 (s _let_10))) (let ((_let_12 (tyop_2Emin_2Efun A_27a))) (let ((_let_13 (_let_12 _let_10))) (let ((_let_14 ((tyop_2Emin_2Efun _let_1) _let_13))) (= (_let_11 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s (_let_12 _let_14)) F0_2E0)) _let_7))) _let_2))) _let_8)) (_let_11 (_let_9 ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s _let_4) (_let_9 _let_7))) (_let_5 (c_2Eset__relation_2Estrict_2E1 (_let_5 (c_2Ewellorder_2Ewellorder__REP_2E1 _let_2)))))))))))))))))))))))) (forall ((V0x_2E0 u) (V1w_2E0 u)) (let ((_let_1 (tyop_2Ewellorder_2Ewellorder A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1w_2E0))) (let ((_let_4 ((s A_27a) V0x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 ((tyop_2Epair_2Eprod A_27a) tyop_2Emin_2Ebool)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s (_let_5 tyop_2Emin_2Ebool)))) (= (_let_8 (c_2Ewellorder_2EelsOf_2E1 (_let_2 ((c_2Ewellorder_2Ewobound_2E2 _let_4) _let_3)))) (_let_8 (c_2Epred__set_2EGSPEC_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_5 _let_7)) F0_2E0)) _let_4))) _let_3)))))))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (= (_let_50 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Enum_2Enum)) (_let_50 c_2Ebool_2ETYPE__DEFINITION_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d)) (and (forall ((V1h_2E0 u) (V2t_2E0 u) (V3n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_3 (_let_2 V2t_2E0))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Elist_2ELEN_2E2 (_let_2 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1h_2E0)) _let_3))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V3n))))) (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Elist_2ELEN_2E2 _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V3n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Elist_2ELEN_2E2 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) (_let_1 (i_mono_2Etyop_2Enum_2Enum V0n))))) V0n))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 mono_2Etyop_2Emin_2Eind)) (= (j_mono_2Etyop_2Emin_2Eind ((s tyop_2Emin_2Eind) (i_mono_2Etyop_2Emin_2Eind V0))) V0)) (forall ((A_27a d)) (exists ((V0rep_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ewellorder_2Ewellorder_2E0)) ((s ((tyop_2Emin_2Efun (tyop_2Ewellorder_2Ewellorder A_27a)) _let_1)) V0rep_2E0))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0R_2E0))) (= (_let_1 (c_2Eset__relation_2Ereln__to__rel_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) (c_2Eset__relation_2Erel__to__reln_2E1 _let_2)))) _let_2)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27c))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2ELIST__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2ELIST__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0))) (=> (and (_let_1 V0m) (_let_1 V1n)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EMOD V2x))) (= ((mono_2Ec_2Earithmetic_2EMOD (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1n) V0m))) V1n) (_let_1 V1n))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2EEncode_2Elift__sum_2E3 _let_6) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EEncode_2Elift__sum_2E0)) _let_6))) _let_4))) _let_2)))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ElistRange_2ElistRangeLHI V0m) V0m) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0R_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3x_2E0 u) (V4y_2E0 u) (V5z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5z_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (c_2Earithmetic_2ENRC_2E4 ((s (_let_5 (_let_5 tyop_2Emin_2Ebool))) V0R_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1m))) _let_3) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_8) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((_let_6 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2B V1m) V2n)))) _let_3) _let_2))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s (_let_1 (_let_2 (_let_2 tyop_2Enum_2Enum)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Eind))) (= (_let_1 (i_mono_2Etyop_2Emin_2Eind (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) V0)))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not (= (mono_2Ec_2Enum_2ESUC V0n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X0_2E0))) (= (_let_2 (c_2Ebag_2EBAG__REST_2E1 _let_3)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) c_2Ebag_2EBAG__REST_2E0)) _let_3))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27a) V4y_2E0))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V3x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V1f_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_10 (_let_6 _let_9))) (= (_let_3 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_8))) _let_4))) _let_1)) (_let_3 ((app_2E2 ((s _let_5) ((app_2E2 _let_8) _let_4))) ((s _let_2) ((c_2Epair_2E_2C_2E2 _let_1) _let_1)))))))))))))))) (forall ((V0ls_2E0 u) (V1f_2E0 u) (V2e_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V0ls_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V2e_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 ((tyop_2Emin_2Efun _let_5) A_27b)))) (let ((_let_8 ((s _let_7) V1f_2E0))) (let ((_let_9 (_let_6 ((tyop_2Emin_2Efun A_27a) A_27b)))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_4) ((s (tyop_2Elist_2Elist _let_5)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_1) _let_1)) ((c_2Epair_2E_2C_2E2 _let_2) _let_2)))))) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (let ((_let_2 (_let_1 V1m))) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m) ((mono_2Ec_2Eprim__rec_2E_3C V2a) _let_2)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2EDIV V2a) (_let_1 V0n))) _let_2))))) (forall ((V0m mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2ESUC V0m) (mono_2Ec_2Enum_2EABS__num (mono_2Ec_2Enum_2ESUC__REP (mono_2Ec_2Enum_2EREP__num V0m))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1s_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_4 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F0_2E0)) _let_7))) _let_3))) _let_2))) (and (not (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7)))) (= _let_3 _let_2))))))))))))) (forall ((V0R_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) V1s_2E0))) (let ((_let_4 (_let_1 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V0R_2E0))) (= (_let_5 ((c_2Eset__relation_2ERREFL__EXP_2E2 _let_6) _let_3)) (_let_5 ((c_2Erelation_2ERUNION_2E2 _let_6) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) F0_2E0)) _let_3)))))))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Enum_2Enum_29 V0))) ((s tyop_2Emin_2Eind) (i_mono_2Etyop_2Emin_2Eind V1))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Eind))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Eind (j_mono_2Etyop_2Emin_2Eind _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> (= (mono_2Ec_2Enum_2ESUC V0m) (mono_2Ec_2Enum_2ESUC V1n)) (= V0m V1n))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0a mono_2Etyop_2Estring_2Echar) (V1a_27 mono_2Etyop_2Estring_2Echar)) (= (= (mono_2Ec_2Estring_2EORD V0a) (mono_2Ec_2Estring_2EORD V1a_27)) (= V0a V1a_27))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2EfixedPoint_2Eempty_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2EfixedPoint_2Eempty_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Epair_2EFST_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_2))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (and (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind mono_2Ec_2Enum_2ESUC__REP) (not (mono_2Ec_2Ebool_2EONTO_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind mono_2Ec_2Enum_2ESUC__REP))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((F4 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (F3 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool)) (F2 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (F1 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 Bool)) (F0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 Bool))) (=> (forall ((V6c2 mono_2Etyop_2Estring_2Echar) (V7t2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V8c1 mono_2Etyop_2Estring_2Echar) (V9t1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((((F4 V6c2) V7t2) V8c1) V9t1) (and ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Estring_2Echar V9t1) V7t2) (= V8c1 V6c2)))) (=> (forall ((V4v2 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) (V6c2 mono_2Etyop_2Estring_2Echar) (V7t2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= (((F3 V4v2) V6c2) V7t2) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V4v2) ((F4 V6c2) V7t2)))) (=> (forall ((V4v2 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29) (V5v3 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (= ((F2 V4v2) V5v3) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Estring_2Echar_20mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V5v3) (F3 V4v2)))) (=> (forall ((V3v1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29) (V4v2 mono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (= ((F1 V3v1) V4v2) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Emin_2Ebool V3v1) mono_2Ec_2Ebool_2EF) (F2 V4v2)))) (=> (forall ((V2v mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29) (V3v1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29)) (= ((F0 V2v) V3v1) (((mono_2Ec_2Eoption_2Eoption__CASE_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_20mono_2Etyop_2Emin_2Ebool V2v) mono_2Ec_2Ebool_2ET) (F1 V3v1)))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Estring_2Echar V0s1) V1s2) ((mono_2Ec_2Epair_2Epair__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (mono_2Ec_2Estring_2EDEST__STRING V0s1)) (mono_2Ec_2Estring_2EDEST__STRING V1s2))) F0))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5))) (= (_let_2 (((c_2Earithmetic_2EFUNPOW_2E3 _let_7) _let_4) _let_3)) (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Earithmetic_2EFUNPOW_2E0)) _let_7))) _let_4))) _let_3)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Earithmetic_2E_3C_3D V0x) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) V0x)) ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V0x) (mono_2Ec_2Elist_2ELIST__TO__SET_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2ElistRange_2ElistRangeINC V2m) V1n))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Eone_2Eone))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_2 (_let_2 _let_1)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_2Ctyop_2Elist_2Elist_28tyop_2Eone_2Eone_29_29_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27c))) (= (_let_9 (((c_2Esum_2Esum__CASE_2E3 _let_6) _let_4) _let_2)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Esum_2Esum__CASE_2E0)) _let_6))) _let_4))) _let_2))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Eoption_2EOPTION__BIND_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Eoption_2EOPTION__BIND_2E0)) _let_5))) _let_3))))))))))) (exists ((V0rep (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind))) ((mono_2Ec_2Ebool_2ETYPE__DEFINITION_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2EIS__NUM__REP) V0rep)) (forall ((A_27a d) (A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0))) (= mono_2Ec_2Enum_2E0 (mono_2Ec_2Enum_2EABS__num mono_2Ec_2Enum_2EZERO__REP)) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Emin_2Eind) (i_mono_2Etyop_2Emin_2Eind V1))))))) (forall ((A_27a d) (V0a_2E0 u) (V1a0_2E0 u) (V2f_2E0 u) (V3f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 A_27a))))) (let ((_let_3 (_let_2 V3f0_2E0))) (let ((_let_4 (s A_27a))) (= (_let_2 (c_2Esemi__ring_2Esemi__ring__SRM_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_4 V0a_2E0)) (_let_4 V1a0_2E0)) (_let_2 V2f_2E0)) _let_3)))) _let_3)))))) (forall ((V0b mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V2x mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Eprim__rec_2E_3C (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) V0b) ((mono_2Ec_2Eprim__rec_2E_3C V2x) (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Enum_2Enum V1l)) ((mono_2Ec_2Elist_2EEVERY_2Emono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2E_3E V0b)) V1l)) (= ((mono_2Ec_2Earithmetic_2EMOD ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Enumposrep_2El2n V0b) V1l)) ((mono_2Ec_2Earithmetic_2EEXP V0b) V2x))) V0b) ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V2x) V1l)))) (forall ((V0m mono_2Etyop_2Emin_2Eind)) (= (mono_2Ec_2Enum_2EIS__NUM__REP V0m) (forall ((V1P (-> mono_2Etyop_2Emin_2Eind Bool))) (=> (and (V1P mono_2Ec_2Enum_2EZERO__REP) (forall ((V2n mono_2Etyop_2Emin_2Eind)) (=> (V1P V2n) (V1P (mono_2Ec_2Enum_2ESUC__REP V2n))))) (V1P V0m))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (and _let_49 (forall ((V0c mono_2Etyop_2Estring_2Echar) (V1cs mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0c))) (= (mono_2Ec_2Estring_2EIMPLODE (_let_1 V1cs)) (_let_1 (mono_2Ec_2Estring_2EIMPLODE V1cs)))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EONTO_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0))) (_let_1 (c_2Ebool_2EONTO_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0relrec_27_2E0 u)) (=> (and (forall ((V1lf_2E0 u) (V2nd_2E0 u) (V3a_2E0 u)) (let ((_let_1 ((s A_27a) V3a_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 ((s _let_2) V1lf_2E0))) (let ((_let_4 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_6))) (let ((_let_8 ((tyop_2Emin_2Efun _let_5) _let_7))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_8)) V0relrec_27_2E0)) _let_3))) ((s _let_5) V2nd_2E0)))) ((s _let_4) (c_2Einftree_2EiLf_2E1 _let_1))))) ((s A_27b) ((app_2E2 _let_3) _let_1)))))))))))))) (forall ((V4lf_2E0 u) (V5nd_2E0 u) (V6b_2E0 u) (V7df_2E0 u) (V8g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s A_27c) V6b_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_2) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) V5nd_2E0))) (let ((_let_7 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_9 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Emin_2Efun _let_7) _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (=> (forall ((V9d_2E0 u)) (let ((_let_1 ((s A_27d) V9d_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27d))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s A_27b) ((app_2E2 ((s _let_3) V8g_2E0)) _let_1)))) (let ((_let_5 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_6 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) V7df_2E0)) _let_1)))) (let ((_let_7 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun _let_3) A_27b)))) (let ((_let_8 ((s _let_7) V5nd_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_10 ((s _let_9) V4lf_2E0))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun _let_5) _let_12))) (let ((_let_14 ((tyop_2Emin_2Efun _let_7) _let_13))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_9) _let_14)) V0relrec_27_2E0)) _let_10))) _let_8))) _let_6))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Einftree_2Erelrec_2E4 _let_10) _let_8) _let_6) _let_4))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) V0relrec_27_2E0)) ((s _let_8) V4lf_2E0)))) _let_6))) ((s _let_7) ((c_2Einftree_2EiNd_2E2 _let_3) ((s (_let_1 _let_7)) V7df_2E0)))))) ((s A_27b) ((app_2E2 ((s _let_4) ((app_2E2 _let_6) _let_3))) ((s _let_2) V8g_2E0)))))))))))))))))))) (forall ((V10a0_2E0 u) (V11a1_2E0 u) (V12a2_2E0 u) (V13a3_2E0 u)) (let ((_let_1 ((s A_27b) V13a3_2E0))) (let ((_let_2 (((tyop_2Einftree_2Einftree A_27a) A_27c) A_27d))) (let ((_let_3 ((s _let_2) V12a2_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27d) A_27b)) A_27b)))) (let ((_let_5 ((s _let_4) V11a1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_7 ((s _let_6) V10a0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Einftree_2Erelrec_2E4 _let_7) _let_5) _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) V0relrec_27_2E0)) _let_7))) _let_5))) _let_3))) _let_1)))))))))))))))))) (and (forall ((V1r mono_2Etyop_2Emin_2Eind)) (= (= (mono_2Ec_2Enum_2EREP__num (mono_2Ec_2Enum_2EABS__num V1r)) V1r) (mono_2Ec_2Enum_2EIS__NUM__REP V1r))) (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Enum_2EABS__num (mono_2Ec_2Enum_2EREP__num V0a)) V0a))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (c_2Elist_2EisPREFIX_2E2 (_let_1 V2z_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V1y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EisPREFIX_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2)))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) V1m) (= ((mono_2Ec_2ElistRange_2ElistRangeINC V1m) V0n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eset__relation_2Etc_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0x_2E0)) ((s _let_1) V1x_27_2E0)))) (forall ((V2tc_27_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (forall ((V3a0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (=> (or (exists ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 ((c_2Epair_2E_2C_2E2 (_let_1 V4x_2E0)) (_let_1 V5y_2E0))))) (and (= (_let_3 V3a0_2E0) _let_4) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) V0x_2E0)) _let_4))))))))) (exists ((V6x_2E0 u) (V7y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s ((tyop_2Epair_2Eprod A_27a) A_27a)))) (and (= (_let_2 V3a0_2E0) (_let_2 ((c_2Epair_2E_2C_2E2 (_let_1 V6x_2E0)) (_let_1 V7y_2E0)))) (exists ((V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_4 (s _let_3))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) V2tc_27_2E0)))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 ((c_2Epair_2E_2C_2E2 _let_2) (_let_1 V7y_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (_let_5 (_let_4 ((c_2Epair_2E_2C_2E2 (_let_1 V6x_2E0)) _let_2)))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2tc_27_2E0)) ((s _let_1) V3a0_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V2tc_27_2E0)) ((s _let_1) V1x_27_2E0)))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1l_2E0 u) (V0A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (= (forall ((V2e_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2e_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0A_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) F1_2E0)) ((s _let_2) V1l_2E0)))) ((s _let_1) V0A_2E0))))))))) (=> (forall ((V0A_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0A_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V1l_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool))) (let ((_let_9 (s _let_8))) (let ((_let_10 (_let_7 _let_8))) (= (_let_9 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_5 _let_10)) F0_2E0)) _let_2))) _let_4)) (_let_9 ((c_2Epair_2E_2C_2E2 _let_4) ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F1_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((V0A_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V0A_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 (tyop_2Emin_2Efun _let_3))) (let ((_let_5 (_let_4 ((tyop_2Epair_2Eprod _let_3) tyop_2Emin_2Ebool)))) (let ((_let_6 (s (_let_4 tyop_2Emin_2Ebool)))) (= (_let_6 (c_2Ecardinal_2Elist_2E1 _let_2)) (_let_6 (c_2Epred__set_2EGSPEC_2E1 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_5)) F0_2E0)) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (s tyop_2Emin_2Eind))) (= (_let_1 (i_mono_2Etyop_2Emin_2Eind (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Eind V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Eind))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Eind_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u)) (and (forall ((V1h_2E0 u) (V2t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 ((s A_27a) V1h_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ellist_2Eexists_2E2 _let_3) (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_2) (_let_1 V2t_2E0)))))))))))) (forall ((V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V4t_2E0))) (let ((_let_3 (c_2Ellist_2Eexists_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ellist_2ELCONS_2E2 ((s A_27a) V3h_2E0)) _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ELIST__IGNORE__BIND_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Elist_2ELIST__IGNORE__BIND_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ECONS_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) c_2Elist_2ECONS_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a)))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (let ((_let_8 (s _let_4))) (= (_let_8 ((c_2Estate__transformer_2EEXT_2E2 _let_6) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Estate__transformer_2EEXT_2E0)) _let_6))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V0f_2E0))) (and (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_3) ((s (_let_1 A_27a)) c_2Ecombin_2EI_2E0))) _let_3) (= (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27b)) c_2Ecombin_2EI_2E0)) _let_3)) _let_3)))))) (forall ((A_27a d) (V0b_2E0 u) (V1n mono_2Etyop_2Enum_2Enum) (V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2e1_2E0))) (let ((_let_6 (c_2Ebag_2EBAG__INN_2E3 _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_4 V3e2_2E0))) (let ((_let_9 (= _let_5 _let_8))) (let ((_let_10 (_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum V1n))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_8) _let_2))))) (or (and (not _let_9) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_10 _let_2)))) (and _let_9 (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1n) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))) _let_2))))))))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n))) (=> (and (not (= V1a mono_2Ec_2Enum_2E0)) (= ((mono_2Ec_2Earithmetic_2EMOD V1a) _let_1) mono_2Ec_2Enum_2E0)) ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V1a)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 A_27c)) V1M_2E0))) (let ((_let_3 (_let_1 A_27b))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) _let_3)) V0f_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2EreaderMonad_2EBIND_2E2 _let_2) _let_4)) (_let_5 (c_2EreaderMonad_2EJOIN_2E1 ((s (_let_1 _let_3)) ((c_2EreaderMonad_2EFMAP_2E2 _let_4) _let_2))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) ((tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) ((mono_2Ec_2Ecombin_2EMONOID_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) mono_2Ec_2Ebool_2ET) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (X0 (-> Bool Bool Bool)) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 X0)))) (let ((_let_8 (_let_1 _let_5))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Ecombin_2Eo_2E2 _let_7) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Ecombin_2Eo_2E0)) _let_7))) _let_3)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27d d) (A_27f d) (X0_2E0 u)) (let ((_let_1 ((s A_27d) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27f) A_27d))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27d) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool)) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EINJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EINJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u) (V4d_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V1a_2E0))) (let ((_let_6 ((c_2Ecombin_2EUPDATE_2E3 _let_5) (_let_3 V3c_2E0)))) (let ((_let_7 (_let_4 V2b_2E0))) (let ((_let_8 ((c_2Ecombin_2EUPDATE_2E3 _let_7) (_let_3 V4d_2E0)))) (=> (not (= _let_5 _let_7)) (= (_let_1 (_let_6 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_6 _let_2))))))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((V0 (-> (-> Bool Bool Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_4))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)) (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_3))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) ((mono_2Ec_2Ecombin_2EMONOID_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) mono_2Ec_2Ebool_2EF) (forall ((V0 (-> Bool mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 Bool)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1)))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2EMONOID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2EMONOID_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0f_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 (_let_1 V1x_2E0)))))) (= (_let_1 ((app_2E2 (_let_7 (_let_6 (_let_1 (_let_8 _let_3))))) _let_2)) (_let_1 (_let_8 (_let_1 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2EASSOC_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0))))))) (= (_let_48 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ebag_2EBAG__IN_2Emono_2Etyop_2Enum_2Enum)) (_let_48 c_2Ebag_2EBAG__IN_2E0)) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) A_27a))) (let ((_let_6 (s A_27a))) (= (_let_6 ((c_2Ecombin_2E_3A_3E_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ecombin_2E_3A_3E_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Eone_2Eone Bool)) (V1 mono_2Etyop_2Eone_2Eone)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Eone_2Eone) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eone_2Eone_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27d) A_27a))))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) ((tyop_2Emin_2Efun A_27d) A_27b)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_9))) (let ((_let_11 (s _let_8))) (= (_let_11 (((c_2EerrorStateMonad_2EES__LIFT2_2E3 _let_7) _let_5) _let_3)) (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2EerrorStateMonad_2EES__LIFT2_2E0)) _let_7))) _let_5))) _let_3))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27b) A_27c)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27c))) (= (_let_9 (((c_2Ecombin_2ES_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2ES_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EINJ_2E3 ((s (_let_3 A_27b)) V0f_2E0)) _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (c_2Epred__set_2EFINITE_2E1 _let_1)))) ((mono_2Ec_2Earithmetic_2E_3C_3D (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_4)))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 ((s A_27a) V1a_2E0))) (= (_let_1 (((c_2Ecombin_2EUPDATE_2E3 _let_3) ((s A_27b) ((app_2E2 _let_2) _let_3))) _let_2)) _let_2))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_3 X0_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ecombin_2EFCOMM_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Ecombin_2EFCOMM_2E0)) _let_5))) _let_4))))))))))))) (forall ((V0h1 mono_2Etyop_2Enum_2Enum) (V1l1 mono_2Etyop_2Enum_2Enum) (V2h2 mono_2Etyop_2Enum_2Enum) (V3l2 mono_2Etyop_2Enum_2Enum) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V2h2) V1l1))) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D _let_1) V0h1) (= (((mono_2Ec_2Ebit_2EBITS V2h2) V3l2) (((mono_2Ec_2Ebit_2EBITS V0h1) V1l1) V4n)) (((mono_2Ec_2Ebit_2EBITS _let_1) ((mono_2Ec_2Earithmetic_2E_2B V3l2) V1l1)) V4n))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Esum_2EOUTL_2E1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) (c_2Esum_2EINL_2E1 _let_2)))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 mono_2Etyop_2Estring_2Echar) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Estring_2Echar)))) (= (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V0) V1))) (_let_1 ((c_2Elist_2ECONS_2E2 ((s tyop_2Estring_2Echar) (i_mono_2Etyop_2Estring_2Echar V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (mono_2Ec_2Emin_2E_3D_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Emin_2E_3D_2E1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))))))) (forall ((A_27a d) (V0f_2E0 u) (V1X_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1X_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) V0f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2EfixedPoint_2Eclosed_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_2 ((app_2E2 _let_4) _let_3))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((s A_27b) V1x_2E0))) (let ((_let_2 ((s A_27a) V2y_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0f_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 (((c_2Ecombin_2EC_2E3 _let_4) _let_1) _let_2)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0g_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0g_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_7 ((s (_let_2 _let_6)) V1f_2E0))) (let ((_let_8 (s A_27b))) (= (_let_8 (((c_2Ecombin_2ES_2E3 _let_7) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_8 ((app_2E2 ((s _let_6) ((app_2E2 _let_7) _let_1))) ((s A_27c) ((app_2E2 _let_5) _let_1)))))))))))))))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1xs_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0n)))) (= (_let_1 ((c_2Erich__list_2ELASTN_2E2 _let_3) _let_2)) (_let_1 (c_2Elist_2EREVERSE_2E1 (_let_1 ((c_2Elist_2ETAKE_2E2 _let_3) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_2 ((c_2Ecombin_2EK_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Ecombin_2EK_2E0)) _let_3))) _let_1)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27c) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ecombin_2Eo_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27c) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V1g_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 (((c_2Ecombin_2Eo_2E3 _let_3) _let_2) _let_1)) (_let_4 ((app_2E2 _let_3) ((s A_27a) ((app_2E2 _let_2) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0) V1))) (_let_1 ((c_2Ebool_2ELET_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (= (_let_3 (c_2Eset__relation_2Edomain_2E1 _let_1)) (_let_3 (c_2Erelation_2ERDOM_2E1 ((s (_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((s A_27c) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 A_27b)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 A_27b))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ecombin_2EC_2E3 _let_6) _let_2) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_2))) _let_1))))))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun _let_2) A_27a)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Ecombin_2ES_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2ES_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (= (j_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 ((s (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1f1_2E0 u) (V2f2_2E0 u) (V3a_2E0 u) (V4b_2E0 u) (V5c_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27c) A_27d)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (s A_27d))) (let ((_let_4 (_let_3 V5c_2E0))) (let ((_let_5 (c_2Ecombin_2EUPDATE_2E3 ((s A_27c) V3a_2E0)))) (let ((_let_6 (_let_3 V4b_2E0))) (=> (not (= _let_6 _let_4)) (not (= (_let_1 ((_let_5 _let_6) _let_2)) (_let_1 ((_let_5 _let_4) _let_2)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((V0c mono_2Etyop_2Estring_2Echar)) (= (mono_2Ec_2Estring_2EisGraph V0c) (and (not (mono_2Ec_2Estring_2EisSpace V0c)) (mono_2Ec_2Estring_2EisPrint V0c)))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum) (V3c_2E0 u) (V4d_2E0 u)) (let ((_let_1 (s ((tyop_2Efcp_2Ecart A_27a) A_27b)))) (let ((_let_2 (_let_1 V0m_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 ((c_2Efcp_2E_3A_2B_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V1a))) (_let_3 V3c_2E0)))) (let ((_let_6 ((c_2Efcp_2E_3A_2B_2E3 (_let_4 (i_mono_2Etyop_2Enum_2Enum V2b))) (_let_3 V4d_2E0)))) (=> (not (= V1a V2b)) (= (_let_1 (_let_5 (_let_1 (_let_6 _let_2)))) (_let_1 (_let_6 (_let_1 (_let_5 _let_2))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))))) (forall ((A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 ((s A_27c) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (= (_let_45 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (_let_45 c_2Ebool_2ELET_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__POINT_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s A_27d) X1_2E0))) (let ((_let_6 ((s A_27c) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun A_27d) _let_7))) (= (_let_3 (((c_2Ecombin_2EUPDATE_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2Ecombin_2EUPDATE_2E0)) _let_6))) _let_5))) _let_4)))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Ecombin_2EMONOID_2Emono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Ecombin_2EMONOID_2E2 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1))))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1x_27_2E0 u) (V2x_27_27_2E0 u)) (let ((_let_1 ((s A_27a) V2x_27_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1x_27_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s (_let_2 _let_4)) V0x_2E0))) (let ((_let_6 (s A_27c))) (= (_let_6 (((c_2Ecombin_2ES_2E3 _let_5) _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_1))) ((s A_27b) ((app_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 ((s ((tyop_2Esum_2Esum A_27a) A_27b)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (not (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISL_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Esum_2EISR_2E1 _let_1))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27c)) V0g_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 (_let_2 _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 (s A_27b))) (= (_let_8 (((c_2Ecombin_2ES_2E3 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) F0_2E0)) _let_7))) _let_3) _let_1)) (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_1))) ((s A_27c) ((app_2E2 _let_3) _let_1)))))))))))))))) (forall ((A_27a d) (V0t_2E0 u) (V1h_2E0 u) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0))) (let ((_let_3 (c_2Ellist_2Eevery_2E2 _let_2))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 ((s A_27a) V1h_2E0))) (let ((_let_6 (_let_1 V0t_2E0))) (and (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_6))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 _let_2) _let_5))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 c_2Ellist_2ELNIL_2E0)))) mono_2Ec_2Ebool_2ET))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27e d) (A_27f d) (X0_2E0 u)) (let ((_let_1 ((s A_27e) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27f) A_27e))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27e) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d)) (and (forall ((V2f_2E0 u) (V3v_2E0 u)) (let ((_let_1 ((s A_27d) V3v_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27d) A_27e)) V2f_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27f))) (let ((_let_4 (s (_let_3 A_27e)))) (= (_let_4 ((c_2Ecombin_2Eo_2E2 _let_2) ((s (_let_3 A_27d)) (c_2Ecombin_2EK_2E1 _let_1)))) (_let_4 (c_2Ecombin_2EK_2E1 ((s A_27e) ((app_2E2 _let_2) _let_1)))))))))) (forall ((V0f_2E0 u) (V1v_2E0 u)) (let ((_let_1 (c_2Ecombin_2EK_2E1 ((s A_27c) V1v_2E0)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27c)))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27c)) _let_1)) ((s (_let_2 A_27b)) V0f_2E0))) (_let_3 _let_1)))))))) (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1l mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0h) V1l) (= (((mono_2Ec_2Ebit_2ESLICE V0h) V1l) V2n) mono_2Ec_2Enum_2E0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ELEFT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ELEFT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 ((s A_27a) V2x_2E0))) (let ((_let_4 (_let_1 V1t_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_2) _let_3))) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 ((c_2Epred__set_2EDELETE_2E2 _let_4) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1f_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s A_27c) V0v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27b)) V1f_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2P_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((app_2E2 _let_4) ((s A_27b) ((c_2Ebool_2ELET_2E2 _let_3) _let_1)))) (_let_5 ((c_2Ebool_2ELET_2E2 ((s (_let_2 A_27a)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X0_2E0))) (let ((_let_7 (s _let_3))) (= (_let_7 ((c_2Ecombin_2EC_2E2 _let_6) _let_1)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) c_2Ecombin_2EC_2E0)) _let_6))) _let_1))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V1x_27_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s (_let_2 _let_3)) V0x_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ecombin_2EW_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_1))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s (_let_2 _let_3)) V0f_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ecombin_2EW_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_1))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f1_2E0 u) (V1f2_2E0 u) (V2a_2E0 u) (V3b_2E0 u) (V4c_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4c_2E0))) (let ((_let_3 (_let_1 V3b_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_5 (c_2Ecombin_2EUPDATE_2E3 ((s A_27a) V2a_2E0)))) (=> (= (_let_4 ((_let_5 _let_3) (_let_4 V0f1_2E0))) (_let_4 ((_let_5 _let_2) (_let_4 V1f2_2E0)))) (and (= _let_3 _let_2) (forall ((V5v_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 ((c_2Ecombin_2EUPDATE_2E3 ((s A_27a) V2a_2E0)) ((s A_27b) V5v_2E0)))) (= (_let_1 (_let_2 (_let_1 V0f1_2E0))) (_let_1 (_let_2 (_let_1 V1f2_2E0))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1a_2E0 u) (V2s_2E0 u)) (= (exists ((V3x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3x_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_1 V0P_2E0)) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_3) (_let_1 ((c_2Epred__set_2EINSERT_2E2 (_let_2 V1a_2E0)) (_let_1 V2s_2E0)))))))))))) (or (exists ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V2s_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1a_2E0))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1f_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((s A_27c) V0v_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27b)) V1f_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2P_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((app_2E2 _let_4) ((s A_27b) ((c_2Ebool_2Eliteral__case_2E2 _let_3) _let_1)))) (_let_5 ((c_2Ebool_2Eliteral__case_2E2 ((s (_let_2 A_27a)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (mono_2Ec_2Ecombin_2EASSOC_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_5C_2F) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 ((s A_27a) V0x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2Elist_2ESET__TO__LIST_2E1 (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_3 c_2Epred__set_2EEMPTY_2E0))))) (_let_1 ((c_2Elist_2ECONS_2E2 _let_2) (_let_1 c_2Elist_2ENIL_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((s A_27b) V0x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1f_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 ((c_2Ecombin_2E_3A_3E_2E2 _let_1) _let_2)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1LIST__RELi_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (=> (and (forall ((V2h1_2E0 u) (V3h2_2E0 u) (V4l1_2E0 u) (V5l2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((s A_27b) V3h2_2E0))) (let ((_let_4 (_let_2 V5l2_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (s _let_5))) (let ((_let_7 ((s A_27a) V2h1_2E0))) (let ((_let_8 (_let_6 V4l1_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_10 (app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) V1LIST__RELi_27_2E0)))) (let ((_let_11 (s _let_9))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_14 ((tyop_2Emin_2Efun A_27a) _let_13))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_14)) V0R_2E0)) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_8))))) _let_7))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 _let_8))) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 (_let_11 (_let_10 (_let_6 ((c_2Elist_2EAPPEND_2E2 _let_8) (_let_6 ((c_2Elist_2ECONS_2E2 _let_7) (_let_6 c_2Elist_2ENIL_2E0)))))))) (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) (_let_2 ((c_2Elist_2ECONS_2E2 _let_3) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) V1LIST__RELi_27_2E0)) ((s _let_2) c_2Elist_2ENIL_2E0)))) ((s _let_1) c_2Elist_2ENIL_2E0))))) (forall ((V6a0_2E0 u) (V7a1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) V7a1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27a))) (let ((_let_4 ((s _let_3) V6a0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2EindexedLists_2ELIST__RELi_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) V0R_2E0)) _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) V1LIST__RELi_27_2E0)) _let_4))) _let_2)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erich__list_2EIS__SUFFIX_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Erich__list_2ELASTN_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Erich__list_2ELASTN_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2ECOMM_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2ECOMM_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Ecombin_2EK_2E2 _let_2) ((s A_27b) V1x_27_2E0))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b_2E0 u) (V2a_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1b_2E0))) (let ((_let_5 ((s A_27a) V2a_2E0))) (=> (= (_let_3 ((app_2E2 _let_2) _let_5)) _let_4) (= (_let_1 (((c_2Ecombin_2EUPDATE_2E3 _let_5) _let_4) _let_2)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 (_let_2 _let_1))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecombin_2EFCOMM_2E2 _let_2) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ecombin_2EASSOC_2E1 _let_2)))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) (V2 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (((mono_2Ec_2Elist_2Elist__CASE_2Emono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0) V1) V2))) (_let_3 (((c_2Elist_2Elist__CASE_2E3 ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V0))) (_let_3 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V1))) ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_29 V2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ecombin_2Eo_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 ((tyop_2Efcp_2Ecart A_27a) A_27b))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Efcp_2Efcp__index_2E2 _let_3) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Efcp_2Efcp__index_2E0)) _let_3))) _let_1))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27d))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X2_2E0))) (let ((_let_7 (s A_27d))) (let ((_let_8 (_let_7 X1_2E0))) (let ((_let_9 (_let_1 X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun A_27d) _let_10))) (= (_let_7 ((((c_2Ecombin_2EUPDATE_2E4 _let_9) _let_8) _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_3 _let_11)) c_2Ecombin_2EUPDATE_2E0)) _let_9))) _let_8))) _let_6))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Epred__set_2EPREIMAGE_2E3 _let_3) _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 ((s A_27b) ((app_2E2 _let_3) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0f_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 (_let_1 V1x_2E0)))))) (= (_let_1 (_let_8 (_let_1 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))) (_let_1 ((app_2E2 (_let_7 (_let_6 (_let_1 (_let_8 _let_3))))) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2EASSOC_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0))))))) (forall ((A_27state d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 (_let_2 ((tyop_2Emin_2Efun _let_3) _let_1)))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_3))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_4) _let_1))) (let ((_let_9 (s _let_1))) (= (_let_9 ((c_2Epair_2Epair__CASE_2E2 _let_7) _let_5)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epair_2Epair__CASE_2E0)) _let_7))) _let_5))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X2_2E0))) (let ((_let_5 ((s A_27b) X1_2E0))) (let ((_let_6 ((s A_27a) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) _let_7))) (= (_let_3 (((c_2Ecombin_2EUPDATE_2E3 _let_6) _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2Ecombin_2EUPDATE_2E0)) _let_6))) _let_5))) _let_4)))))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (=> (and (exists ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V2f_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))) (exists ((V3g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V3g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V1t_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))) (exists ((V4h_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EBIJ_2E3 ((s (_let_1 A_27b)) V4h_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (c_2Ecombin_2EUPDATE_2E3 ((s A_27a) V1a_2E0)))) (let ((_let_5 (_let_4 (_let_3 V3c_2E0)))) (= (_let_1 (_let_5 (_let_1 ((_let_4 (_let_3 V2b_2E0)) _let_2)))) (_let_1 (_let_5 _let_2))))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (_let_3 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ERIGHT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ERIGHT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (_let_1 (_let_1 _let_2)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V1)))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ecombin_2EASSOC_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_2 (c_2Ecombin_2EASSOC_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1g_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s (_let_2 _let_4)) V0f_2E0))) (let ((_let_6 (s A_27c))) (= (_let_6 (((c_2Ecombin_2ES_2E3 _let_5) _let_3) _let_1)) (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) _let_1))) ((s A_27b) ((app_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27c))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (_let_2 ((tyop_2Emin_2Efun A_27c) A_27b)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ecombin_2ES_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2ES_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d)) (and (forall ((V0a_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 ((s A_27a) V0a_2E0))) (= (_let_1 ((((c_2Ecombin_2EUPDATE_2E4 _let_3) _let_2) ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V2f_2E0)) _let_3)) _let_2))))) (forall ((V3a_2E0 u) (V4b_2E0 u) (V5x_2E0 u) (V6f_2E0 u)) (let ((_let_1 (s A_27c))) (let ((_let_2 (_let_1 V4b_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) A_27d)) V6f_2E0))) (let ((_let_4 (s A_27d))) (let ((_let_5 (_let_1 V3a_2E0))) (=> (not (= _let_5 _let_2)) (= (_let_4 ((((c_2Ecombin_2EUPDATE_2E4 _let_5) (_let_4 V5x_2E0)) _let_3) _let_2)) (_let_4 ((app_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 (-> mono_2Etyop_2Enum_2Enum Bool)) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X1)))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Ecombin_2EI_2E1 _let_2)) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) (_let_2 A_27a)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ERIGHT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ERIGHT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1v_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27b) V1v_2E0))) (let ((_let_2 ((s A_27c) V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 _let_3)) V2f_2E0))) (let ((_let_6 (s A_27a))) (= (_let_6 ((app_2E2 ((s _let_3) ((c_2Ebool_2ELET_2E2 _let_5) _let_1))) _let_2)) (_let_6 ((c_2Ebool_2ELET_2E2 ((s (_let_4 A_27a)) ((c_2Ecombin_2EC_2E2 _let_5) _let_2))) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C V0n) (mono_2Ec_2Enum_2ESUC V0n))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 ((c_2Ecombin_2EW_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_3)) c_2Ecombin_2EW_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V1a_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3c_2E0))) (let ((_let_3 (_let_1 V1a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3c_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V0f_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 V2b_2E0))) (let ((_let_7 (_let_1 V1a_2E0))) (let ((_let_8 (_let_3 tyop_2Emin_2Ebool))) (= (_let_5 ((((c_2Ecombin_2EUPDATE_2E4 _let_7) _let_6) _let_4) _let_2)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_7))) _let_2))) _let_6) (_let_5 ((app_2E2 _let_4) _let_2)))))))))))))))) (forall ((A_27b d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ETAKE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2ETAKE_2E0)) _let_4))) _let_3))))))))) (= (_let_42 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ecombin_2EASSOC_2Emono_2Etyop_2Emin_2Ebool)) (_let_42 c_2Ecombin_2EASSOC_2E0)) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0g_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0g_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V1f_2E0))) (let ((_let_6 (s A_27b))) (= (_let_6 (((c_2Ecombin_2Eo_2E3 _let_5) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_6 ((app_2E2 _let_5) ((s A_27c) ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (_let_1 V0s_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (or (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Epred__set_2Ecountable_2E1 (_let_1 ((c_2Epred__set_2EINTER_2E2 _let_3) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 ((tyop_2Emin_2Efun A_27b) A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ecombin_2ELEFT__ID_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ecombin_2ELEFT__ID_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27b) A_27a))) V0l_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Erich__list_2EUNZIP__SND_2E1 _let_1)) (_let_3 (c_2Epair_2ESND_2E1 ((s ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27b)) _let_2)) (c_2Elist_2EUNZIP_2E1 _let_1))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 ((s A_27b) X3_2E0))) (let ((_let_2 ((s A_27a) X2_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X1_2E0))) (let ((_let_7 (_let_5 X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_4))) (let ((_let_9 (_let_8 _let_4))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((((c_2Erelation_2ERUNION_2E4 _let_7) _let_6) _let_2) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_3) ((app_2E2 (_let_5 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_8 _let_9)) c_2Erelation_2ERUNION_2E0)) _let_7))) _let_6))) _let_2))) _let_1))))))))))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (s _let_2))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V1)))))))))) (forall ((A_27a d) (X0 (-> Bool Bool)) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 X0)))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0t2_2E0 u) (V1t1_2E0 u) (V2s2_2E0 u) (V3s1_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27d) tyop_2Emin_2Ebool)) V0t2_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2s2_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool)) V1t1_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V3s1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_5) _let_2)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardleq_2E2 _let_2) _let_1))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Ebool_2Eliteral__case_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2Eliteral__case_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1P_2E0 u) (V2M_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (= (forall ((V3f_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (=> (forall ((V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_3 _let_6)) V0R_2E0)) _let_2))) (_let_1 V4x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) V1P_2E0)) _let_2))) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V3f_2E0)) _let_2))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_2 _let_5)) V1P_2E0)) _let_1))) ((s A_27b) ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V2M_2E0)) (_let_4 V3f_2E0)))) _let_1)))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2EINDUCTIVE__INVARIANT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V1P_2E0)) ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V2M_2E0)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27b))) (let ((_let_5 ((tyop_2Emin_2Efun A_27c) _let_4))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) A_27a))))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2EerrorStateMonad_2EMMAP_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2EerrorStateMonad_2EMMAP_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2ECOMM_2E1 ((s (_let_1 (_let_1 A_27b))) V0f_2E0)))) (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0f_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s A_27b))) (= (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3)) (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0f_2E0 u) (V1g_2E0 u) (V2h_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 ((s (_let_1 A_27c)) V2h_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 ((s (_let_3 A_27a)) V1g_2E0))) (let ((_let_5 (c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_6 (s (_let_1 A_27b)))) (= (_let_6 (_let_5 ((s (_let_1 A_27a)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_2)))) (_let_6 ((c_2Ecombin_2Eo_2E2 ((s (_let_3 A_27b)) (_let_5 _let_4))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 ((s A_27a) V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_6 A_27b))) (let ((_let_10 (_let_4 _let_9))) (= (_let_1 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_8))) _let_2))) _let_3)) (_let_1 ((app_2E2 ((s _let_5) ((app_2E2 _let_8) _let_3))) _let_2)))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_5 A_27b)))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_5 (_let_6 A_27b)))) (= (_let_3 (((c_2Elist_2EFOLDR_2E3 _let_8) _let_4) _let_2)) (_let_3 (((c_2Elist_2EFOLDL_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1L_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (= (exists ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V2l_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_1)) V1L_2E0))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s _let_1) (c_2Elist_2EFLAT_2E1 ((s (tyop_2Elist_2Elist _let_1)) V1L_2E0))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) _let_1))) (let ((_let_3 ((s _let_2) X2_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_4 (((c_2Eoption_2Eoption__CASE_2E3 _let_7) _let_5) _let_3)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Eoption_2Eoption__CASE_2E0)) _let_7))) _let_5))) _let_3))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 ((s A_27b) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_3 A_27c)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_4 A_27c))) (let ((_let_8 (_let_3 _let_7))) (let ((_let_9 (s A_27c))) (= (_let_9 (((c_2Ecombin_2EC_2E3 _let_6) _let_2) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2EC_2E0)) _let_6))) _let_2))) _let_1))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0y_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27c) V0y_2E0))) (let ((_let_2 ((s A_27a) V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V1f_2E0))) (let ((_let_7 (s A_27b))) (= (_let_7 (((c_2Ecombin_2EC_2E3 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F0_2E0)) _let_6))) _let_1) _let_2)) (_let_7 ((app_2E2 ((s _let_3) ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1z_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V1z_2E0))) (let ((_let_3 (_let_1 V0y_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Erelation_2ERSUBSET_2E2 _let_2) _let_3)))) (= _let_3 _let_2))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2EFCOMM_2E2 ((s (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s ((tyop_2Emin_2Efun A_27c) (_let_1 A_27a))) V1g_2E0)))) (forall ((V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 ((s A_27b) V4z_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V3y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27c) _let_5)) V1g_2E0)) ((s A_27c) V2x_2E0)))))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_8 (app_2E2 ((s (_let_4 _let_7)) V0f_2E0)))) (let ((_let_9 (s _let_7))) (= (_let_2 (_let_6 (_let_2 ((app_2E2 (_let_9 (_let_8 _let_3))) _let_1)))) (_let_2 ((app_2E2 (_let_9 (_let_8 (_let_2 (_let_6 _let_3))))) _let_1)))))))))))))))) (forall ((A_27state d) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (F1_2E0 u)) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V0j mono_2Etyop_2Enum_2Enum)) (= (= V1i V0j) ((F0 V1i) V0j))) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V0j mono_2Etyop_2Enum_2Enum) (V2a_2E0 u) (V3u mono_2Etyop_2Eone_2Eone)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0j)))) (let ((_let_7 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_8 (_let_7 _let_3))) (let ((_let_9 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_10 (s _let_1))) (let ((_let_11 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (let ((_let_13 (_let_2 _let_12))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_2 _let_13)) F1_2E0)) (_let_5 (i_mono_2Etyop_2Enum_2Enum V1i))))) _let_6))) _let_4))) ((s tyop_2Eone_2Eone) (i_mono_2Etyop_2Eone_2Eone V3u)))) (_let_10 (c_2EerrorStateMonad_2EFOR_2E1 ((s (_let_7 _let_8)) ((c_2Epair_2E_2C_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1i) V0j)) ((mono_2Ec_2Earithmetic_2E_2B V1i) _let_9)) ((mono_2Ec_2Earithmetic_2E_2D V1i) _let_9))))) ((s _let_8) ((c_2Epair_2E_2C_2E2 _let_6) _let_4))))))))))))))))))))) (forall ((V0j mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2a_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state))))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2a_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (_let_5 (i_mono_2Etyop_2Enum_2Enum V0j)))) (let ((_let_7 (_let_5 (i_mono_2Etyop_2Enum_2Enum V1i)))) (let ((_let_8 ((tyop_2Emin_2Efun tyop_2Eone_2Eone) _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (_let_2 _let_9))) (let ((_let_11 (s _let_1))) (let ((_let_12 (_let_11 ((app_2E2 _let_4) _let_7)))) (let ((_let_13 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_14 (_let_13 _let_3))) (= (_let_11 (c_2EerrorStateMonad_2EFOR_2E1 ((s (_let_13 _let_14)) ((c_2Epair_2E_2C_2E2 _let_7) ((s _let_14) ((c_2Epair_2E_2C_2E2 _let_6) _let_4)))))) (_let_11 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool ((F0 V1i) V0j)))) _let_12) (_let_11 ((c_2EerrorStateMonad_2EBIND_2E2 _let_12) ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_2 _let_10)) F1_2E0)) _let_7))) _let_6))) _let_4))))))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u) (V4d_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V0f_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 V4d_2E0))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V2b_2E0))) (let ((_let_7 (_let_1 (((c_2Ecombin_2EUPDATE_2E3 _let_6) _let_4) _let_2)))) (let ((_let_8 (_let_3 V3c_2E0))) (let ((_let_9 (_let_5 V1a_2E0))) (let ((_let_10 (_let_1 (((c_2Ecombin_2EUPDATE_2E3 _let_9) _let_8) _let_2)))) (let ((_let_11 (= _let_9 _let_6))) (= (= _let_10 _let_7) (or (and _let_11 (= _let_8 _let_4)) (and (not _let_11) (= _let_10 _let_2) (= _let_7 _let_2)))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0l1_2E0 u) (V1l2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) A_27b))))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_5 (_let_1 V0l1_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u) (V5n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V5n)))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_4)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_3 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V1l2_2E0)))))) (= (_let_7 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V2f1_2E0)) _let_2))) _let_1)) (_let_7 ((app_2E2 (_let_6 ((app_2E2 (_let_5 V3f2_2E0)) _let_2))) _let_1))))))))))))) (= (_let_4 ((c_2EindexedLists_2EMAPi_2E2 (_let_3 V2f1_2E0)) _let_5)) (_let_4 ((c_2EindexedLists_2EMAPi_2E2 (_let_3 V3f2_2E0)) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0v_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_21_2E1 (_let_3 ((c_2Ecombin_2ES_2E2 ((s (_let_1 _let_7)) ((c_2Ecombin_2Eo_2E2 ((s (_let_6 _let_7)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_3D_3E))) (_let_3 ((c_2Ecombin_2Eo_2E2 ((s _let_7) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Emarker_2EAbbrev))) (_let_3 ((c_2Ecombin_2EC_2E2 ((s (_let_1 _let_2)) c_2Emin_2E_3D_2E0)) _let_5))))))) _let_4))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 (_let_2 A_27a)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_3 A_27a))) (let ((_let_7 (_let_2 _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2EC_2E2 _let_5) _let_1)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2EC_2E0)) _let_5))) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u)) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0f_2E0)) _let_2))) ((s A_27b) V1e_2E0))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ERIGHT__ID_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27a))) V0f_2E0)) ((s A_27b) V1e_2E0)))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1abs_2E0 u) (V2rep_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (_let_1 A_27b)) V1abs_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)))) (forall ((V3a1 Bool) (V4a2 Bool) (V5b1_2E0 u) (V6b2_2E0 u) (V7c1_2E0 u) (V8c2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8c2_2E0))) (let ((_let_3 (_let_1 V6b2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V7c1_2E0))) (let ((_let_6 (_let_1 V5b1_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 ((s (_let_7 _let_8)) V0R_2E0)))) (let ((_let_10 (s _let_8))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_10 (_let_9 _let_6))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_10 (_let_9 _let_5))) _let_2))) (= V3a1 V4a2)) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 (_let_10 (_let_9 (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V3a1))) _let_6) _let_5))))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V4a2))) _let_3) _let_2)))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1v_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s A_27b) V1v_2E0))) (let ((_let_2 ((s A_27c) V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 ((s (_let_4 _let_3)) V2f_2E0))) (let ((_let_6 (s A_27a))) (= (_let_6 ((app_2E2 ((s _let_3) ((c_2Ebool_2Eliteral__case_2E2 _let_5) _let_1))) _let_2)) (_let_6 ((c_2Ebool_2Eliteral__case_2E2 ((s (_let_4 A_27a)) ((c_2Ecombin_2EC_2E2 _let_5) _let_2))) _let_1)))))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (= (_let_2 c_2Esorting_2EPERM_2E0) (_let_2 (c_2Erelation_2ERTC_2E1 (_let_2 c_2Esorting_2EPERM__SINGLE__SWAP_2E0))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s (_let_4 _let_5)) V0R_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_5) ((app_2E2 _let_6) _let_3))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (((c_2Erelation_2ERTC_2E3 _let_6) _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_2 ((c_2Ecombin_2EFAIL_2E2 _let_3) _let_1)) (_let_2 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Ecombin_2EFAIL_2E0)) _let_3))) _let_1)))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0s (-> mono_2Etyop_2Enum_2Enum Bool)) (V1t (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V1t) (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0s)) (= (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EUNION_2Emono_2Etyop_2Enum_2Enum V0s) V1t)) ((mono_2Ec_2Earithmetic_2E_2D ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Epred__set_2ESUM__SET V0s)) (mono_2Ec_2Epred__set_2ESUM__SET V1t))) (mono_2Ec_2Epred__set_2ESUM__SET ((mono_2Ec_2Epred__set_2EINTER_2Emono_2Etyop_2Enum_2Enum V0s) V1t)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (F0 (-> Bool Bool))) (=> (forall ((V2P Bool)) (= (F0 V2P) (not V2P))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V1i_2E0))) (let ((_let_4 (_let_2 V0v_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2P))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 _let_4) _let_3) (_let_1 (i_mono_2Etyop_2Emin_2Ebool (F0 V2P)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0l4_2E0 u) (V1l3_2E0 u) (V2l2_2E0 u) (V3l1_2E0 u) (V4R_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V0l4_2E0))) (let ((_let_3 (_let_1 V2l2_2E0))) (let ((_let_4 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_5 (_let_4 V1l3_2E0))) (let ((_let_6 (_let_4 V3l1_2E0))) (let ((_let_7 (c_2Elist_2ELIST__REL_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V4R_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 _let_6) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((_let_7 (_let_4 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Ecombin_2EFAIL_2E2 _let_2) ((s A_27b) V1x_27_2E0))) _let_2)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u) (V3c_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3c_2E0))) (let ((_let_3 (_let_1 V2b_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 (c_2Ecombin_2EUPDATE_2E3 ((s A_27a) V1a_2E0)))) (= (= (_let_4 ((_let_6 _let_3) _let_5)) (_let_4 ((_let_6 _let_2) _let_5))) (= _let_3 _let_2))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 ((tyop_2Emin_2Efun A_27b) A_27a)))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ecombin_2EFCOMM_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Ecombin_2EFCOMM_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((c_2Ecombin_2EK_2E2 _let_2) ((s A_27b) V1y_2E0))) _let_2)))) (forall ((A_27a d) (V0v_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 ((s A_27a) V0v_2E0))) (let ((_let_6 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ELET_2E2 _let_4) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ebool_2E_21_2E1 (_let_3 ((c_2Ecombin_2ES_2E2 ((s (_let_1 _let_7)) ((c_2Ecombin_2Eo_2E2 ((s (_let_6 _let_7)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Emin_2E_3D_3D_3E))) (_let_3 ((c_2Ecombin_2Eo_2E2 ((s _let_7) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Emarker_2EAbbrev))) (_let_3 ((c_2Ecombin_2EC_2E2 ((s (_let_1 _let_2)) c_2Emin_2E_3D_2E0)) _let_5))))))) _let_4))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27b) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V0g_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (s A_27c))) (= (_let_6 (((c_2Ecombin_2Eo_2E3 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_2) _let_1)) (_let_6 ((app_2E2 _let_5) ((s A_27a) ((app_2E2 _let_2) _let_1)))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1)))) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29_2Ctyop_2Emin_2Ebool_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3s_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V0f_2E0))) (let ((_let_6 (s _let_2))) (let ((_let_7 (_let_6 V3s_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_3))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_8)) F0_2E0)) _let_5))) _let_7))) _let_1)) (_let_6 ((c_2Epred__set_2EUNION_2E2 _let_7) (_let_6 ((app_2E2 _let_5) _let_1)))))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u) (V2s_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (s _let_3))) (let ((_let_8 (_let_7 V2s_2E0))) (let ((_let_9 (_let_6 _let_4))) (= (_let_7 (((c_2Elist_2EFOLDL_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F0_2E0)) _let_5))) _let_8) _let_1)) (_let_7 ((c_2Epred__set_2EUNION_2E2 _let_8) (_let_7 (c_2Epred__set_2EBIGUNION_2E1 ((s (_let_6 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_5) ((s (_let_2 tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 _let_1))))))))))))))))))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0a_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0a_2E0 u) (V1b_2E0 u) (V2x_2E0 u) (V3x_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_27_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 ((s (_let_3 A_27b)) V2x_2E0))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 V1b_2E0))) (let ((_let_7 (_let_1 V0a_2E0))) (let ((_let_8 (_let_3 tyop_2Emin_2Ebool))) (= (_let_5 ((((c_2Ecombin_2EUPDATE_2E4 _let_7) _let_6) _let_4) _let_2)) (_let_5 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_3 _let_8)) F0_2E0)) _let_7))) _let_2))) _let_6) (_let_5 ((app_2E2 _let_4) _let_2)))))))))))))))) (forall ((A_27a d) (V0s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)) tyop_2Emin_2Ebool)))) (not (= (_let_1 (c_2Erich__list_2Ecommon__prefixes_2E1 (_let_1 V0s_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0))))) (forall ((A_27a d) (V0f_2E0 u) (V1e_2E0 u)) (let ((_let_1 ((s A_27a) V1e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 (_let_2 A_27a))) V0f_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2EASSOC_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecombin_2ELEFT__ID_2E2 _let_3) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecombin_2ERIGHT__ID_2E2 _let_3) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ecombin_2EMONOID_2E2 _let_3) _let_1))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Eone_2Eone_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0k_2E0 u) (V1m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a)))) V0k_2E0))) (let ((_let_3 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a))))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) _let_3)) V1m_2E0))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2EerrorStateMonad_2EBIND_2E2 _let_2) _let_4)) (_let_5 (c_2EerrorStateMonad_2EJOIN_2E1 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_3) A_27a)))) ((c_2EerrorStateMonad_2EMMAP_2E2 _let_4) _let_2))))))))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool Bool)) (V1 (-> Bool Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_5 (tyop_2EEncode_2Etree A_27a))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool)) (c_2EEncode_2Elift__tree_2E1 _let_4)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2EDecode_2Ewf__decoder_2E2 _let_6) ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1)))) ((c_2EDecode_2Edecode__tree_2E2 _let_6) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ecombin_2ES_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ecombin_2ES_2E0)) _let_6))) _let_4))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1v_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1v_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0f_2E0))) (let ((_let_4 (s A_27c))) (= (_let_4 ((c_2Epair_2EUNCURRY_2E2 _let_3) _let_1)) (_let_4 ((app_2E2 ((s _let_2) ((app_2E2 _let_3) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 ((s A_27a) V1a_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_5 (_let_4 V0f_2E0))) (= (= (_let_4 (((c_2Ecombin_2EUPDATE_2E3 _let_3) _let_2) _let_5)) _let_5) (= (_let_1 ((app_2E2 _let_5) _let_3)) _let_2)))))))) (forall ((A_27d d) (A_27e d) (A_27f d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27f))) (let ((_let_2 (_let_1 A_27d))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27d) A_27e))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27e))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_5) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_2 _let_6)) c_2Ebool_2EIN_2E0)) _let_5))) _let_4)))))))))))) (forall ((A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27d))) (let ((_let_2 (_let_1 A_27c))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27c)) V1g_2E0))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27c) A_27b)) V0f_2E0))) (let ((_let_4 (s A_27b))) (= (_let_4 (((c_2Ecombin_2Eo_2E3 _let_3) _let_2) _let_1)) (_let_4 ((app_2E2 _let_3) ((s A_27c) ((app_2E2 _let_2) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X0_2E0))) (= (_let_1 (c_2Ecombin_2EI_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Ecombin_2EI_2E0)) _let_2)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0x_2E0 u) (V1x_27_2E0 u) (V2x_27_27_2E0 u)) (let ((_let_1 ((s A_27b) V1x_27_2E0))) (let ((_let_2 ((s A_27a) V2x_27_27_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0x_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 (((c_2Ecombin_2EC_2E3 _let_4) _let_1) _let_2)) (_let_5 ((app_2E2 ((s _let_3) ((app_2E2 _let_4) _let_2))) _let_1))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ecombin_2EASSOC_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ecombin_2EASSOC_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V1s_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s _let_1) (c_2Epred__set_2EBIGUNION_2E1 _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eoption_2EIS__SOME_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Eoption_2EIS__SOME_2E0)) _let_2)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2EEQC_2E3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0)) _let_1) _let_1)))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27a))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27a))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (= (_let_41 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecombin_2EMONOID_2Emono_2Etyop_2Emin_2Ebool)) (_let_41 c_2Ecombin_2EMONOID_2E0)) (forall ((A_27a d)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 c_2Ecombin_2EI_2E0) (_let_3 ((c_2Ecombin_2ES_2E2 ((s (_let_1 ((tyop_2Emin_2Efun _let_2) A_27a))) c_2Ecombin_2EK_2E0)) ((s (_let_1 _let_2)) c_2Ecombin_2EK_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0y_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (= (_let_1 ((c_2Ecombin_2EFAIL_2E2 _let_2) ((s A_27b) V0y_2E0))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (j_mono_2Etyop_2Enum_2Enum _let_2))) _let_2)))) (forall ((A_27a d) (V0e_2E0 u) (V1s1_2E0 u) (V2s2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s2_2E0))) (let ((_let_3 (c_2Epred__set_2ESUBSET_2E2 (_let_1 V1s1_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0e_2E0)) _let_2))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enumpair_2Etri (mono_2Ec_2Enumpair_2Einvtri V0n))) V0n)) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27b) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (_let_2 A_27c))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_7))) (let ((_let_9 (s A_27c))) (= (_let_9 (((c_2Ecombin_2Eo_2E3 _let_6) _let_4) _let_1)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Ecombin_2Eo_2E0)) _let_6))) _let_4))) _let_1))))))))))))) (mono_2Ec_2Ecombin_2EASSOC_2Emono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2E_2F_5C) (forall ((A_27a d) (V0e_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2))) (= (exists ((V2b_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((s _let_1) V2b_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1P_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebag_2EBAG__IN_2E2 ((s A_27a) V0e_2E0)) ((s _let_1) (c_2Ebag_2EBIG__BAG__UNION_2E1 _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27b))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 X2_2E0))) (let ((_let_7 (s A_27b))) (let ((_let_8 (_let_7 X1_2E0))) (let ((_let_9 (_let_1 X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_4))) (let ((_let_11 ((tyop_2Emin_2Efun A_27b) _let_10))) (= (_let_7 ((((c_2Ecombin_2EUPDATE_2E4 _let_9) _let_8) _let_6) _let_2)) (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s (_let_3 _let_11)) c_2Ecombin_2EUPDATE_2E0)) _let_9))) _let_8))) _let_6))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1e_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ELEFT__ID_2E2 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27b))) V0f_2E0)) ((s A_27a) V1e_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V2x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27b))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V0f_2E0)) ((s A_27a) V1e_2E0)))) _let_2)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_4))) _let_4)))))) (forall ((V0 (-> (-> Bool Bool Bool) Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27c) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27c) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((V0q Bool) (V1p Bool)) (=> (not (=> V1p V0q)) (not V0q))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0r Bool) (V1q Bool) (V2p Bool)) (= (and (or (not V1q) V2p) (or V1q V0r (not V2p)) (or (not V0r) V2p)) (= (or V0r V1q) V2p))) (forall ((F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F2 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (F0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V4e mono_2Etyop_2Enum_2Enum)) (= (= V4e mono_2Ec_2Enum_2E0) (F4 V4e))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum) (V3c mono_2Etyop_2Enum_2Enum) (V4e mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))))) (= (((F3 V2d) V3c) V4e) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F4 V4e)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2d) (_let_1 V3c))) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2d)) ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V4e)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (=> (forall ((V2d mono_2Etyop_2Enum_2Enum) (V3c mono_2Etyop_2Enum_2Enum)) (= ((F2 V2d) V3c) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((F3 V2d) V3c)) ((mono_2Ec_2Earithmetic_2E_2D V3c) V2d)))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) (V2d mono_2Etyop_2Enum_2Enum)) (= ((F1 V1p) V2d) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F2 V2d)) (mono_2Ec_2Enum_2ESUC ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2ESND_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p)))))) (=> (forall ((V1p mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (= (F0 V1p) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F1 V1p)) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) (mono_2Ec_2Epair_2EFST_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1p))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Elogroot_2EiSQRT2 V0n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 F0) (mono_2Ec_2Elogroot_2ESQRTd V0n)))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0A Bool)) (= (=> (not V0A) mono_2Ec_2Ebool_2EF) V0A)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Ebag_2EBAG__MERGE_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebag_2EBAG__MERGE_2E0)) _let_4))) _let_3)))))))))) (forall ((V0q Bool) (V1p Bool)) (=> (and V0q V1p) V1p)) (forall ((V0s Bool) (V1r Bool) (V2q Bool) (V3p Bool)) (let ((_let_1 (not V3p))) (let ((_let_2 (not V2q))) (let ((_let_3 (not V0s))) (let ((_let_4 (not V1r))) (= (= V3p (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V2q) V1r) V0s)) (and (or V3p V2q _let_3) (or _let_4 _let_2 V3p) (or V3p _let_4 _let_3) (or _let_2 V1r _let_1) (or V2q V0s _let_1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0b Bool)) (=> V0b (= V0b mono_2Ec_2Ebool_2ET))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V3y_2E0 u)) (exists ((V4x_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V4x_2E0))) (_let_1 V3y_2E0))))) (forall ((V1t_2E0 u)) (exists ((V2s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (= (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 A_27b)) V0f_2E0)) ((s (_let_2 tyop_2Emin_2Ebool)) V2s_2E0))) (_let_1 V1t_2E0)))))))) (forall ((A_27a d) (V0eltsize_2E0 u) (V1e_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (_let_1 V0eltsize_2E0))) (let ((_let_4 (c_2Ebag_2Ebag__size_2E2 _let_3))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 ((s A_27a) V1e_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EFINITE__BAG_2E1 _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 (_let_1 ((c_2Ebag_2EBAG__INSERT_2E2 _let_6) _let_2))))) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2E_2B (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 _let_3) _let_6))))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (_let_4 _let_2))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum) (X2_2E0 u) (X3_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X3_2E0))) (let ((_let_3 (_let_1 X2_2E0))) (let ((_let_4 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (s _let_7))) (let ((_let_9 (_let_8 X0_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_7))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((((c_2Earithmetic_2ENRC_2E4 _let_9) _let_4) _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_6) ((app_2E2 (_let_8 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) c_2Earithmetic_2ENRC_2E0)) _let_9))) _let_4))) _let_3))) _let_2)))))))))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1n mono_2Etyop_2Enum_2Enum) (V0r mono_2Etyop_2Enum_2Enum) (V2x mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Enum_2ESUC V2x))) (= (((F0 V1n) V0r) V2x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0r))) V2x) _let_1)))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Elogroot_2EROOT V0r))) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0r) (and (= (_let_2 mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0) (= (_let_2 V1n) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F0 V1n) V0r)) ((mono_2Ec_2Earithmetic_2E_2A _let_1) (_let_2 ((mono_2Ec_2Earithmetic_2EDIV V1n) ((mono_2Ec_2Earithmetic_2EEXP _let_1) V0r))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (=> (mono_2Ec_2Ebag_2EFINITE__BAG_2Emono_2Etyop_2Enum_2Enum V0b) (=> (= ((mono_2Ec_2Ebag_2EBAG__GEN__PROD V0b) _let_1) _let_1) (forall ((V1x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebag_2EBAG__IN_2Emono_2Etyop_2Enum_2Enum V1x) V0b) (= V1x (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))))) (forall ((V0r Bool) (V1q Bool) (V2p Bool)) (= (and (or V1q V2p) (or (not V0r) V2p) (or V0r (not V2p) (not V1q))) (= (=> V1q V0r) V2p))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Efcp_2Edimindex_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Efcp_2Edimindex_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (_let_1 (c_2Ewellorder_2EelsOf_2E1 ((s (tyop_2Ewellorder_2Ewellorder A_27a)) c_2Ewellorder_2EwZERO_2E0))) (_let_1 c_2Epred__set_2EEMPTY_2E0)))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27b d) (A_27e d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27e) A_27b))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27e))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Equotient_2EQUOTIENT_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Equotient_2EQUOTIENT_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) _let_1)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_7 (s _let_1))) (= (_let_7 ((c_2Epair_2Epair__CASE_2E2 _let_5) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) c_2Epair_2Epair__CASE_2E0)) _let_5))) _let_3))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((V0q Bool) (V1p Bool)) (=> (not (or V0q V1p)) (not V0q))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun (_let_5 A_27b)))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 ((tyop_2Epair_2Eprod _let_9) (_let_8 _let_9)))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 (s _let_10))) (= (_let_12 ((c_2Eposet_2Epointwise__lift_2E2 _let_7) _let_4)) (_let_12 ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_11)) c_2Eposet_2Epointwise__lift_2E0)) _let_7))) _let_4)))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0B Bool) (V1A Bool)) (= (=> (not V1A) (=> (not V0B) mono_2Ec_2Ebool_2EF)) (=> (not (or V1A V0B)) mono_2Ec_2Ebool_2EF))) (forall ((V0B Bool) (V1A Bool)) (= (=> (not (or (not V1A) V0B)) mono_2Ec_2Ebool_2EF) (=> V1A (=> (not V0B) mono_2Ec_2Ebool_2EF)))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (=> (and V1B V0A) V2C) (=> V0A (=> V1B V2C)))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0q Bool) (V1p Bool)) (=> (not (or V0q V1p)) (not V1p))) (forall ((V0r Bool) (V1q Bool) (V2p Bool)) (let ((_let_1 (not V0r))) (let ((_let_2 (not V2p))) (let ((_let_3 (not V1q))) (= (and (or V2p _let_1 _let_3) (or _let_3 _let_2 V0r) (or _let_2 _let_1 V1q) (or V0r V1q V2p)) (= (= V1q V0r) V2p)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0s_2E0 u) (V3c_2E0 u) (V2f_2E0 u) (V5y_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27a))) (let ((_let_3 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_3))) (let ((_let_6 (tyop_2Emin_2Efun _let_3))) (let ((_let_7 (_let_6 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_4 ((app_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) (_let_4 V0s_2E0)))) (_let_4 V3c_2E0)))) ((s _let_2) V2f_2E0)))) ((s A_27a) V5y_2E0)))) (exists ((V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 tyop_2Emin_2Ebool)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (and (= (_let_1 V5y_2E0) (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V3c_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_4 V0s_2E0)) _let_2))))))))))))))))))) (forall ((V0s_2E0 u) (V1r_2E0 u) (V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (_let_1 _let_2))) (= (forall ((V3c_2E0 u) (V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) V2f_2E0))) (let ((_let_6 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V3c_2E0))) (let ((_let_9 (_let_7 V0s_2E0))) (let ((_let_10 ((tyop_2Emin_2Efun _let_4) _let_6))) (let ((_let_11 (tyop_2Emin_2Efun _let_6))) (let ((_let_12 (_let_11 _let_10))) (let ((_let_13 (_let_3 _let_6))) (let ((_let_14 ((s ((tyop_2Epair_2Eprod _let_6) _let_13)) ((c_2Epair_2E_2C_2E2 _let_9) ((s _let_13) V1r_2E0))))) (let ((_let_15 (c_2Eposet_2Elub_2E3 _let_14))) (let ((_let_16 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((c_2Eposet_2Echain_2E2 _let_14) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((_let_15 _let_8) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_16 ((_let_15 (_let_7 ((app_2E2 ((s _let_10) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_11 _let_12)) F0_2E0)) _let_9))) _let_8))) _let_5))) (_let_1 ((app_2E2 _let_5) _let_2))))))))))))))))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Eup__continuous_2E2 ((s ((tyop_2Epair_2Eprod _let_2) _let_3)) ((c_2Epair_2E_2C_2E2 ((s _let_2) V0s_2E0)) ((s _let_3) V1r_2E0)))) ((s (_let_1 A_27a)) V2f_2E0))))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V2l_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 ((s (_let_4 _let_3)) V1g_2E0))) (let ((_let_6 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_7 (_let_2 A_27b))) (let ((_let_8 (s (tyop_2Elist_2Elist A_27b)))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_6) ((s (tyop_2Elist_2Elist A_27a)) ((c_2EindexedLists_2EMAPi_2E2 _let_5) _let_1)))) (_let_8 ((c_2EindexedLists_2EMAPi_2E2 ((s (_let_4 _let_7)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) (c_2Ecombin_2Eo_2E1 _let_6))) _let_5))) _let_1)))))))))))) (forall ((A_27a d) (V0l_2E0 u) (V1m mono_2Etyop_2Enum_2Enum) (V2P_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l_2E0))) (let ((_let_3 (c_2Elist_2EEXISTS_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V2P_2E0)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_1 ((c_2Elist_2ETAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1m))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 _let_2))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2e_2E0 u) (V3acc mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s A_27a) V2e_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_6 (_let_2 _let_5))) (= ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((s _let_5) ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))) _let_1))) V3acc) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) ((app_2E2 _let_4) _let_1)))) V3acc))))))))) (forall ((V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_4 (_let_2 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) _let_3))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (((c_2Epred__set_2EITSET_2E3 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_6)) F0_2E0)) _let_5))) _let_3) (_let_1 (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))))))))))))))) (forall ((V0B Bool) (V1A Bool)) (= (=> (=> V1A mono_2Ec_2Ebool_2EF) (=> (not V0B) mono_2Ec_2Ebool_2EF)) (=> (not (or V1A V0B)) mono_2Ec_2Ebool_2EF))) (forall ((V0 Bool) (V1 Bool)) (= (and V0 V1) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (_let_2 V4y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_6 A_27a))) (let ((_let_10 (_let_4 _let_9))) (= (_let_2 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_10)) F0_2E0)) _let_8))) _let_1))) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 _let_8) _let_3))) _let_1)))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_2 (_let_1 V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_5 A_27a)))) (let ((_let_8 ((s _let_7) V0f_2E0))) (let ((_let_9 (_let_5 (_let_6 A_27a)))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_8) _let_4) _let_2)) (_let_3 (((c_2Elist_2EFOLDR_2E3 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_9)) F0_2E0)) _let_8))) _let_4) (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2))))))))))))))))) (forall ((V0q Bool) (V1p Bool)) (=> (not (=> V1p V0q)) V1p)) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 A_27b))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Epred__set_2EIMAGE_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Epred__set_2EIMAGE_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0q Bool) (V1p Bool)) (=> (and V1p V0q) V0q)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u) (V1f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 (_let_2 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) ((c_2Erelation_2Einv__image_2E2 _let_3) ((s (_let_1 A_27b)) V1f_2E0)))))))))))) (forall ((V0A Bool)) (= (and V0A (not V0A)) mono_2Ec_2Ebool_2EF)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0r Bool) (V1q Bool) (V2p Bool)) (let ((_let_1 (not V2p))) (= (= (and V1q V0r) V2p) (and (or _let_1 V0r) (or V1q _let_1) (or V2p (not V1q) (not V0r)))))) (forall ((A_27a d) (V0b_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebag_2EBAG__CARD__RELn_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)) V0b_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1n))))) (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) V2P_2E0)))) (let ((_let_5 (s _let_3))) (=> (and ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_5 (_let_4 (_let_2 c_2Ebag_2EEMPTY__BAG_2E0)))) mono_2Ec_2Enum_2E0) (forall ((V3b_2E0 u) (V4n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (=> ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) V2P_2E0)) ((s _let_1) V3b_2E0)))) V4n) (forall ((V5e_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) V2P_2E0)) (_let_2 ((c_2Ebag_2EBAG__INSERT_2E2 ((s A_27a) V5e_2E0)) (_let_2 V3b_2E0)))))) (mono_2Ec_2Enum_2ESUC V4n))))))))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 (_let_5 (_let_4 (_let_2 V0b_2E0)))) V1n)))))))))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_4 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_4))) (let ((_let_6 (s _let_4))) (= (_let_6 ((c_2Elist_2EoEL_2E2 _let_3) _let_2)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_5)) c_2Elist_2EoEL_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> Bool mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0q Bool) (V1p Bool)) (let ((_let_1 (not V0q))) (= (and (or V1p V0q) (or _let_1 (not V1p))) (= V1p _let_1)))) (forall ((V0t Bool)) (= (not (not V0t)) V0t)) (forall ((V0A Bool)) (=> (=> (not V0A) mono_2Ec_2Ebool_2EF) (=> (=> V0A mono_2Ec_2Ebool_2EF) mono_2Ec_2Ebool_2EF))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0p Bool)) (=> (not (not V0p)) V0p)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) (_let_2 (_let_2 tyop_2Emin_2Ebool)))))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2c_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_1 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Eposet_2Echain_2E2 ((s ((tyop_2Epair_2Eprod _let_2) _let_4)) ((c_2Epair_2E_2C_2E2 (_let_3 V0s_2E0)) ((s _let_4) V1r_2E0)))) (_let_3 V2c_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V1r_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (app_2E2 (_let_7 V0s_2E0)))) (let ((_let_10 (app_2E2 (_let_7 V2c_2E0)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_10 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_9 _let_3)))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ecardinal_2Ecardeq_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u) (V1t_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 (c_2Epred__set_2EFINITE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_4 A_27b)) V2f_2E0)) _let_5))) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_5))) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))))) (= (forall ((V3y_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27b) V3y_2E0)) ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1t_2E0)))) (exists ((V4x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_2) ((s (_let_3 tyop_2Emin_2Ebool)) V0s_2E0)))) (= (_let_1 ((app_2E2 ((s (_let_3 A_27b)) V2f_2E0)) _let_2)) (_let_1 V3y_2E0))))))))) (forall ((V5x_2E0 u) (V6y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6y_2E0))) (let ((_let_3 (_let_1 V5x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (app_2E2 ((s (_let_4 A_27b)) V2f_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((s (_let_4 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_3) _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2EIN_2E2 _let_2) _let_7))) (= (_let_6 (_let_5 _let_3)) (_let_6 (_let_5 _let_2)))) (= _let_3 _let_2)))))))))))))))))))) (forall ((V0A Bool)) (=> V0A (=> (not V0A) mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_4) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ewellorder_2Ewellorder_2E1 (_let_5 ((c_2Epred__set_2EINSERT_2E2 ((s _let_4) ((c_2Epair_2E_2C_2E2 _let_3) _let_2))) (_let_5 c_2Epred__set_2EEMPTY_2E0)))))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V1x_2E0))) (= (= _let_5 _let_2) (= (_let_4 (_let_3 _let_5)) (_let_4 (_let_3 _let_2)))))))))) (forall ((V3s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V3s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2EFINITE_2E1 _let_2)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0t Bool)) (=> (not V0t) (= V0t mono_2Ec_2Ebool_2EF))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1) (=> V0 V1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (F0 Bool)) (let ((_let_1 (s tyop_2Enum_2Enum))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (=> (= F0 (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself ((tyop_2Esum_2Esum A_27a) A_27b))) c_2Ebool_2Ethe__value_2E0)))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum F0) ((mono_2Ec_2Earithmetic_2E_2B (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0))))) (j_mono_2Etyop_2Enum_2Enum (_let_1 (c_2Efcp_2Edimindex_2E1 ((s (tyop_2Ebool_2Eitself A_27b)) c_2Ebool_2Ethe__value_2E0)))))) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1h_2E0 u) (V2t_2E0 u) (V4h_27_2E0 u) (V5t_27_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V5t_27_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V4h_27_2E0))) (let ((_let_6 (_let_2 V2t_2E0))) (let ((_let_7 (_let_4 V1h_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (tyop_2Emin_2Efun A_27a))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_8 _let_11))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((c_2Elist_2EisPREFIX_2E2 _let_6) _let_3))) (= _let_7 _let_5)) (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_10 _let_12)) F0_2E0)) _let_7))) _let_6))) _let_5))) _let_3)))))))))))))))))) (and (forall ((V1h_2E0 u) (V2t_2E0 u) (V3l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2t_2E0))) (let ((_let_4 ((s A_27a) V1h_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_8 (_let_5 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_2 V3l_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Elist_2EisPREFIX_2E2 (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3))) _let_10))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (((c_2Elist_2Elist__CASE_2E3 _let_10) (_let_9 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_6 _let_8)) F0_2E0)) _let_4))) _let_3))))))))))))))))) (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 V0l_2E0)))) mono_2Ec_2Ebool_2ET)))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V1g_2E0))) (let ((_let_3 (_let_1 V0f_2E0))) (let ((_let_4 ((s A_27a) ((c_2EnormalForms_2EEXT__POINT_2E2 _let_3) _let_2)))) (let ((_let_5 (s A_27b))) (= (= _let_3 _let_2) (= (_let_5 ((app_2E2 _let_3) _let_4)) (_let_5 ((app_2E2 _let_2) _let_4)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V2g_2E0 u) (V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V5y_2E0))) (let ((_let_3 ((s A_27c) V4x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (s _let_7))) (let ((_let_11 (_let_4 _let_7))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_1 ((app_2E2 (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_3))) _let_2)) (_let_1 ((app_2E2 (_let_10 ((app_2E2 _let_9) ((s A_27a) ((app_2E2 _let_6) _let_3))))) _let_2)))))))))))))))) (forall ((V0f_2E0 u) (V1e_2E0 u) (V2g_2E0 u) (V3l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27c)) V3l_2E0))) (let ((_let_2 (s A_27b))) (let ((_let_3 (_let_2 V1e_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27c))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 ((s _let_8) V0f_2E0))) (let ((_let_10 (_let_4 _let_7))) (let ((_let_11 ((tyop_2Emin_2Efun _let_5) _let_10))) (= (_let_2 (((c_2Elist_2EFOLDR_2E3 _let_9) _let_3) ((s (tyop_2Elist_2Elist A_27a)) ((c_2Elist_2EMAP_2E2 _let_6) _let_1)))) (_let_2 (((c_2Elist_2EFOLDR_2E3 ((s _let_10) ((app_2E2 ((s _let_11) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_11)) F0_2E0)) _let_9))) _let_6))) _let_3) _let_1))))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2EnormalForms_2EUNIV__POINT_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2EnormalForms_2EUNIV__POINT_2E0)) _let_2))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 Bool))) (let ((_let_1 (tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2f_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) V0s_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 ((s (_let_3 A_27a)) V2f_2E0))) (let ((_let_8 (_let_3 _let_4))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Eposet_2Elfp_2E3 ((s ((tyop_2Epair_2Eprod _let_4) _let_8)) ((c_2Epair_2E_2C_2E2 _let_5) ((s _let_8) V1r_2E0)))) _let_7) _let_2))) (and (= (_let_1 ((app_2E2 _let_7) _let_2)) _let_2) (forall ((V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V1r_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 V0s_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 ((app_2E2 ((s (_let_3 A_27a)) V2f_2E0)) _let_2))))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_6 (_let_5 (_let_1 V3x_2E0)))) _let_2)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 _let_5) _let_2)))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_2))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2ECONS_2E1 _let_1)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) c_2Elist_2ECONS_2E0)) _let_1)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V0 V1))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (_let_1 (c_2Elist_2ETL_2E1 _let_2)))) (let ((_let_4 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V0n)))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum _let_4))))) (let ((_let_7 (s A_27a))) (and (= (_let_7 (_let_6 _let_2)) (_let_7 ((c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE _let_4)))) _let_3))) (= (_let_7 ((c_2Elist_2EEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V0n))))) _let_2)) (_let_7 (_let_6 _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (A_27e d) (A_27f d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27d)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27e)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27e) A_27b)) V5rep2_2E0)))) (forall ((V6R3_2E0 u) (V7abs3_2E0 u) (V8rep3_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V6R3_2E0)) ((s (_let_1 A_27f)) V7abs3_2E0)) ((s ((tyop_2Emin_2Efun A_27f) A_27c)) V8rep3_2E0)))) (forall ((V9f1_2E0 u) (V10f2_2E0 u) (V11g1_2E0 u) (V12g2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V12g2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27b))) (let ((_let_5 (s (_let_4 A_27c)))) (let ((_let_6 (_let_5 V10f2_2E0))) (let ((_let_7 (s (_let_1 A_27c)))) (let ((_let_8 (_let_2 V11g1_2E0))) (let ((_let_9 (_let_5 V9f1_2E0))) (let ((_let_10 (tyop_2Emin_2Efun A_27c))) (let ((_let_11 ((s (_let_10 (_let_10 tyop_2Emin_2Ebool))) V6R3_2E0))) (let ((_let_12 (c_2Equotient_2E_3D_3D_3D_3E_2E4 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)))) (let ((_let_13 (s tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V3R2_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_13 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_14) _let_11) _let_9) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((_let_12 _let_14) _let_8) _let_3)))) (j_mono_2Etyop_2Emin_2Ebool (_let_13 (((_let_12 _let_11) (_let_7 ((c_2Ecombin_2Eo_2E2 _let_9) _let_8))) (_let_7 ((c_2Ecombin_2Eo_2E2 _let_6) _let_3)))))))))))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2EnormalForms_2EEXT__POINT_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2EnormalForms_2EEXT__POINT_2E0)) _let_4))) _let_3))))))))))) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V2a) V1b))) (= (and (or ((mono_2Ec_2ETemporal__Logic_2ENEXT _let_1) V0t0) (V2a V0t0)) (not (V1b V0t0))) (_let_1 V0t0)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27b) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum))) (let ((_let_5 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_5 ((c_2Erich__list_2ELIST__ELEM__COUNT_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Erich__list_2ELIST__ELEM__COUNT_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun (tyop_2Eoption_2Eoption _let_1)) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Eoption_2EOPTION__MAP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Eoption_2EOPTION__MAP_2E0)) _let_3))))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V1 V0))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (F2 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (F0 V0b) (forall ((V2t1 mono_2Etyop_2Enum_2Enum)) (exists ((V3t2 mono_2Etyop_2Enum_2Enum)) (V0b ((mono_2Ec_2Earithmetic_2E_2B V3t2) V2t1)))))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V5t1 mono_2Etyop_2Enum_2Enum)) (forall ((V6t2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V6t2) V5t1))) (and (not (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) _let_1)) (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) _let_1))))) ((F2 V1a) V0b))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (forall ((V4t0 mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) V4t0) (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) V0b) V4t0))) ((F1 V1a) V0b))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool (F0 V0b)) ((F1 V1a) V0b)) ((F2 V1a) V0b))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1P_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V1P_2E0))) (let ((_let_2 (s tyop_2Enum_2Enum))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 _let_1))) (= (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool)) ((c_2Epred__set_2ECROSS_2E2 (_let_3 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_3 c_2Epred__set_2EEMPTY_2E0)))) _let_1))))) (j_mono_2Etyop_2Enum_2Enum (_let_2 (c_2Epred__set_2ECARD_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_2 (_let_1 V1g_2E0))) (let ((_let_3 (_let_1 V0f_2E0))) (let ((_let_4 ((s A_27a) ((c_2EnormalForms_2EEXT__POINT_2E2 _let_3) _let_2)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 ((app_2E2 _let_3) _let_4)) (_let_5 ((app_2E2 _let_2) _let_4))) (= _let_3 _let_2)))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (= mono_2Ec_2EASCIInumbers_2Enum__from__bin__string ((mono_2Ec_2EASCIInumbers_2Es2n _let_19) mono_2Ec_2EASCIInumbers_2EUNHEX)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (= (_let_39 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 mono_2Ec_2Ecardinal_2EHAS__SIZE_2Emono_2Etyop_2Enum_2Enum)) (_let_39 c_2Ecardinal_2EHAS__SIZE_2E0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_3))) (= (_let_4 ((c_2Eset__relation_2Emaximal__elements_2E2 _let_5) _let_2)) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eset__relation_2Emaximal__elements_2E0)) _let_5))) _let_2)))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_1) ((s A_27a) (c_2EnormalForms_2EUNIV__POINT_2E1 _let_1)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u) (V3e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 (_let_4 A_27a))) V0f_2E0))) (let ((_let_6 ((c_2Elist_2EFOLDR_2E3 _let_5) (_let_3 V3e_2E0)))) (let ((_let_7 (_let_1 V1l1_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ecombin_2EASSOC_2E1 _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (c_2Ecombin_2ECOMM_2E1 _let_5)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Esorting_2EPERM_2E2 _let_7) _let_2))) (= (_let_3 (_let_6 _let_7)) (_let_3 (_let_6 _let_2)))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod (_let_1 A_27b)) (_let_1 A_27c))) tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Ebool_2E_3F_21_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_3))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (V0p_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_1) ((s A_27a) (c_2EnormalForms_2EUNIV__POINT_2E1 _let_1))))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0p_2E0)) ((s A_27a) V1x_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0p_2E0 u) (V1c_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Eposet_2Ecomplete_2E1 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Eposet_2Eglb_2E3 ((s ((tyop_2Epair_2Eprod _let_2) (_let_1 _let_2))) V0p_2E0)) ((s _let_2) V1c_2E0)) ((s A_27a) V2x_2E0))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Estring_2Echar)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 V0P_2E0))) (let ((_let_6 (_let_2 (c_2Epred__set_2EBIGUNION_2E1 _let_5)))) (let ((_let_7 (_let_4 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_8 (or (= _let_5 _let_7) (= _let_5 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_7)))))) (and (= (= _let_3 _let_6) _let_8) (= _let_8 (= _let_6 _let_3)))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x Bool)) (= (mono_2Ec_2Emarker_2EAbbrev V0x) V0x)) (forall ((A_27a d) (A_27b d) (A_27c d) (V0fM_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) A_27a))))) (let ((_let_3 (s _let_2))) (= (_let_3 ((c_2EerrorStateMonad_2EBIND_2E2 ((s (_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) c_2EerrorStateMonad_2EES__FAIL_2E0)) ((s ((tyop_2Emin_2Efun A_27c) _let_2)) V0fM_2E0))) (_let_3 c_2EerrorStateMonad_2EES__FAIL_2E0)))))) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V0f_2E0 u) (V1ls_2E0 u) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1ls_2E0))) (let ((_let_3 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V2n)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_5 ((s _let_4) V0f_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) _let_7))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) F0_2E0)) _let_5))) _let_2))) _let_3)) (_let_6 ((app_2E2 _let_5) ((s A_27a) ((c_2Elist_2EEL_2E2 _let_3) _let_2)))))))))))))) (forall ((V0f_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) V1ls_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_4 ((s _let_3) V0f_2E0))) (let ((_let_5 (s (tyop_2Elist_2Elist A_27b)))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27b))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (= (_let_5 ((c_2Elist_2EGENLIST_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_7)) F0_2E0)) _let_4))) _let_2))) ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2)))) (_let_5 ((c_2Elist_2EMAP_2E2 _let_4) _let_2))))))))))))) (forall ((V0x Bool)) (= (mono_2Ec_2Emarker_2ECong V0x) V0x)) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (V0xs_2E0 u) (V1x_2E0 u) (V2n mono_2Etyop_2Enum_2Enum) (V3m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27a) V1x_2E0))))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0xs_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (c_2Elist_2EoEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))))) (=> (= (_let_1 (_let_6 (_let_3 ((c_2Elist_2ETAKE_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V3m))) _let_4)))) _let_2) (= (_let_1 (_let_6 _let_4)) _let_2))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s (_let_1 (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0a_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27b) A_27a)) V0a_2E0))) (let ((_let_2 (s ((tyop_2Epair_2Eprod A_27a) A_27b)))) (= (_let_2 (c_2Epair_2ESWAP_2E1 _let_1)) (_let_2 ((c_2Epair_2E_2C_2E2 ((s A_27a) (c_2Epair_2ESND_2E1 _let_1))) ((s A_27b) (c_2Epair_2EFST_2E1 _let_1)))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0p Bool) (V1q Bool) (V2m Bool)) (let ((_let_1 (mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool V2m))) (let ((_let_2 (or _let_1 V1q V0p))) (and (= (or V0p _let_1) (or _let_1 V0p)) (= (or V0p _let_1 V1q) (or V0p V1q _let_1)) (= _let_2 _let_2))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (V0R1_2E0 u) (V1abs1_2E0 u) (V2rep1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R1_2E0)) ((s (_let_1 A_27c)) V1abs1_2E0)) ((s ((tyop_2Emin_2Efun A_27c) A_27a)) V2rep1_2E0)))) (forall ((V3R2_2E0 u) (V4abs2_2E0 u) (V5rep2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Equotient_2EQUOTIENT_2E3 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V3R2_2E0)) ((s (_let_1 A_27d)) V4abs2_2E0)) ((s ((tyop_2Emin_2Efun A_27d) A_27b)) V5rep2_2E0)))) (forall ((V6f_2E0 u) (V7g_2E0 u) (V8x_2E0 u) (V9y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V9y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (_let_4 V7g_2E0))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_1 V8x_2E0))) (let ((_let_8 (_let_4 V6f_2E0))) (let ((_let_9 (tyop_2Emin_2Efun A_27b))) (let ((_let_10 (_let_9 tyop_2Emin_2Ebool))) (let ((_let_11 ((s (_let_9 _let_10)) V3R2_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_14 ((s (_let_3 _let_13)) V0R1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((((c_2Equotient_2E_3D_3D_3D_3E_2E4 _let_14) _let_11) _let_8) _let_5))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_13) ((app_2E2 _let_14) _let_7))) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_10) ((app_2E2 _let_11) (_let_6 ((c_2Ebool_2Eliteral__case_2E2 _let_8) _let_7))))) (_let_6 ((c_2Ebool_2Eliteral__case_2E2 _let_5) _let_2))))))))))))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1Q_2E0))) (let ((_let_4 (_let_2 V0P_2E0))) (let ((_let_5 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (= (_let_2 (c_2Epred__set_2EBIGINTER_2E1 (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_4) (_let_5 ((c_2Epred__set_2EINSERT_2E2 _let_3) (_let_5 c_2Epred__set_2EEMPTY_2E0))))))) (_let_2 ((c_2Epred__set_2EINTER_2E2 _let_4) _let_3))))))))) (forall ((V0lab mono_2Etyop_2Emin_2Eind) (V1argument Bool)) (= ((mono_2Ec_2Emarker_2E_3A_2D V0lab) V1argument) V1argument)) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u) (V3y_2E0 u) (V4z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4z_2E0))) (let ((_let_3 (_let_1 V2x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (_let_4 _let_5))) (let ((_let_7 ((s _let_6) V1r_2E0))) (let ((_let_8 (app_2E2 _let_7))) (let ((_let_9 (s _let_5))) (let ((_let_10 (app_2E2 (_let_9 (_let_8 _let_3))))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (let ((_let_12 (_let_1 V3y_2E0))) (let ((_let_13 (_let_9 V0s_2E0))) (let ((_let_14 (app_2E2 _let_13))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_11 (c_2Eposet_2Eposet_2E1 ((s ((tyop_2Epair_2Eprod _let_5) _let_6)) ((c_2Epair_2E_2C_2E2 _let_13) _let_7))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_14 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_14 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 _let_12))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 (_let_9 (_let_8 _let_12))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_14 _let_12)))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 (_let_10 _let_2))))))))))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Estring_2Echar)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 ((tyop_2Emin_2Efun (_let_1 tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (V0ys_2E0 u) (V1y_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2x_2E0))) (= (or (= _let_2 (_let_1 c_2Elist_2ENIL_2E0)) (exists ((V3xs_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3xs_2E0))) (and (= (_let_1 V2x_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1y_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_2) (_let_1 V0ys_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 _let_2) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V1y_2E0)) (_let_1 V0ys_2E0)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0s_2E0 u) (V1R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0s_2E0))) (let ((_let_5 ((s (_let_1 _let_2)) V1R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Epred__set_2Eequiv__on_2E2 _let_5) _let_4))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 (_let_3 c_2Epred__set_2EEMPTY_2E0)) ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) ((c_2Epred__set_2Epartition_2E2 _let_5) _let_4)))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_2 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eposet_2Etop_2E2 ((s ((tyop_2Epair_2Eprod _let_3) _let_6)) ((c_2Epair_2E_2C_2E2 _let_4) ((s _let_6) V1r_2E0)))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1))) (forall ((V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 V0s_2E0)) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V1r_2E0)) _let_2))) (_let_1 V2x_2E0))))))))))))))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1Q_2E0 u) (V2b_2E0 u)) (=> (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2b_2E0)))) (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (app_2E2 (_let_5 V1Q_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_1 V4y_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))) _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 _let_2)))))))))))))) (forall ((V5x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Erelation_2ERTC_2E3 ((s (_let_3 _let_4)) V0R_2E0)) _let_2) (_let_1 V2b_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) V1Q_2E0)) _let_2)))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F0 V0b) V2t) (not (V0b V2t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (and (V0b V3t) (V1a V3t)) (((F1 V1a) V0b) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V0b) ((mono_2Ec_2ETemporal__Logic_2EUNTIL (F0 V0b)) ((F1 V1a) V0b))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Emarker_2Eunint_2E1 _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Ereflexive_2E0)) _let_3))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool Bool)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Eind) (i_mono_2Etyop_2Emin_2Eind V1)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X0_2E0))) (= (_let_1 (c_2Emarker_2Estmarker_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Emarker_2Estmarker_2E0)) _let_2)))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V4b_2E0 u) (V5s_2E0 u)) (let ((_let_1 ((s A_27a) V5s_2E0))) (let ((_let_2 ((s A_27b) V4b_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) _let_4))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 (s _let_4))) (let ((_let_9 (s _let_3))) (= (_let_9 ((app_2E2 (_let_8 ((app_2E2 (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_5)) F1_2E0)) _let_7))) _let_2))) _let_1)) (_let_9 ((app_2E2 (_let_8 ((app_2E2 _let_7) _let_2))) _let_1))))))))))))) (=> (forall ((V1f_2E0 u) (V3v_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_2))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_7 ((s _let_6) V3v_2E0))) (let ((_let_8 (s _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_6) _let_1))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_5 _let_9)) F0_2E0)) _let_4))) _let_7)) (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_7) (_let_3 ((app_2E2 ((s (_let_5 _let_2)) F1_2E0)) _let_4))))))))))))))) (forall ((V0g_2E0 u) (V1f_2E0 u) (V2s0_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) V1f_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) _let_1))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((s A_27a) V2s0_2E0))) (let ((_let_9 (tyop_2Eoption_2Eoption _let_5))) (let ((_let_10 ((s (_let_2 _let_9)) V0g_2E0))) (= (_let_7 (((c_2EerrorStateMonad_2EBIND_2E3 _let_10) _let_4) _let_8)) (_let_7 (((c_2Eoption_2Eoption__CASE_2E3 ((s _let_9) ((app_2E2 _let_10) _let_8))) (_let_7 c_2Eoption_2ENONE_2E0)) ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) F0_2E0)) _let_4))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Eind))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Eind (j_mono_2Etyop_2Emin_2Eind _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind Bool Bool)) (V1 mono_2Etyop_2Emin_2Eind)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))) (let ((_let_2 (s (tyop_2Eoption_2Eoption A_27a)))) (= (_let_2 (c_2Ellist_2ELHD_2E1 ((s (tyop_2Ellist_2Ellist A_27a)) (c_2Ellist_2EfromList_2E1 _let_1)))) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 _let_1))) (_let_2 c_2Eoption_2ENONE_2E0)) (_let_2 (c_2Eoption_2ESOME_2E1 ((s A_27a) (c_2Elist_2EHD_2E1 _let_1)))))))))) (forall ((V0p Bool) (V1q Bool) (V2m Bool)) (let ((_let_1 (mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool V2m))) (and (= (and V0p _let_1) (and _let_1 V0p)) (= (and _let_1 V0p V1q) (and V0p V1q _let_1)) (= (and _let_1 V1q V0p) (and V0p _let_1 V1q))))) (forall ((V0p Bool) (V1q Bool) (V2m Bool)) (let ((_let_1 (mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool V2m))) (let ((_let_2 (and V0p _let_1 V1q))) (let ((_let_3 (and _let_1 V0p))) (and (= _let_3 _let_3) (= _let_2 _let_2) (= (and V1q _let_1 V0p) (and _let_1 V1q V0p))))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 ((s (_let_3 (_let_3 tyop_2Emin_2Ebool))) (c_2Elist_2ESHORTLEX_2E1 _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X0_2E0))) (= (_let_1 (c_2Emarker_2Eunint_2E1 _let_2)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) c_2Emarker_2Eunint_2E0)) _let_2)))))) (= (_let_22 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool)) (_let_22 c_2Emarker_2Estmarker_2E0)) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 mono_2Etyop_2Emin_2Eind)) (= (j_mono_2Etyop_2Emin_2Eind ((s tyop_2Emin_2Eind) (i_mono_2Etyop_2Emin_2Eind V0))) V0)) (forall ((V0b1 Bool) (V1b2 Bool)) (= ((mono_2Ec_2Emarker_2EAC V0b1) V1b2) (and V1b2 V0b1))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27c))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27b))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27c) (_let_5 A_27b))))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27b))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2EindexedLists_2EFOLDRi_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EindexedLists_2EFOLDRi_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (X0 mono_2Etyop_2Enum_2Enum) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 ((s A_27a) X1_2E0))) (let ((_let_6 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X0)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 ((tyop_2Emin_2Efun A_27a) _let_7))) (let ((_let_9 (s _let_1))) (= (_let_9 (((c_2Eind__type_2ECONSTR_2E3 _let_6) _let_5) _let_4)) (_let_9 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) c_2Eind__type_2ECONSTR_2E0)) _let_6))) _let_5))) _let_4))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (= mono_2Ec_2Emarker_2EIfCases mono_2Ec_2Ebool_2ET) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0p Bool) (V1q Bool) (V2m Bool)) (let ((_let_1 (mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool V2m))) (let ((_let_2 (or _let_1 V0p))) (let ((_let_3 (or _let_1 V1q V0p))) (and (= (or V1q _let_1 V0p) (or V0p _let_1 V1q)) (= _let_3 _let_3) (= _let_2 _let_2)))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0f_2E0))) (let ((_let_4 (s A_27c))) (= (_let_4 ((c_2Epair_2EUNCURRY_2E2 _let_3) _let_1)) (_let_4 ((app_2E2 ((s _let_2) ((app_2E2 _let_3) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Emarker_2Estmarker_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Emarker_2Estmarker_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (F0 V0n) (= V0n mono_2Ec_2Enum_2E0))) (=> (forall ((V2a mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V0n mono_2Etyop_2Enum_2Enum) (V3q mono_2Etyop_2Enum_2Enum)) (= ((((F1 V2a) V1m) V0n) V3q) (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Earithmetic_2E_2B V2a) V3q)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D V1m) ((mono_2Ec_2Earithmetic_2E_2A V0n) V3q))) V0n))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1m) V0n))) (= (mono_2Ec_2Earithmetic_2EDIVMOD ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2a) _let_1)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (F0 V0n)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0) mono_2Ec_2Enum_2E0)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Eprim__rec_2E_3C V1m) V0n)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V2a) V1m)) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (((F1 V2a) V1m) V0n)) (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))) _let_1))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 (c_2Emarker_2Estmarker_2E1 _let_2)) _let_2)))) (forall ((A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s _let_4) X1_2E0))) (let ((_let_6 (_let_3 A_27b))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_4) _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 (((c_2Epred__set_2EBIJ_2E3 _let_7) _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Epred__set_2EBIJ_2E0)) _let_7))) _let_5))) _let_2))))))))))))))) (forall ((V0t Bool)) (= (or mono_2Ec_2Ebool_2ET V0t) mono_2Ec_2Ebool_2ET)) (forall ((V0c Bool) (V1x Bool)) (= (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c) mono_2Ec_2Ebool_2EF) V1x) (and (not V0c) V1x))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0c Bool) (V1x Bool) (V2x_27 Bool) (V3y Bool) (V4y_27 Bool)) (let ((_let_1 (mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c))) (=> (and (=> V0c (=> V2x_27 V1x)) (=> (not V0c) (=> V4y_27 V3y))) (=> ((_let_1 V2x_27) V4y_27) ((_let_1 V1x) V3y))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V0m))) (= (_let_1 ((mono_2Ec_2Earithmetic_2E_2D V1n) V2p)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V2p)) V0m) ((mono_2Ec_2Earithmetic_2E_2D (_let_1 V1n)) V2p))))) (forall ((V0t Bool)) (= (or V0t mono_2Ec_2Ebool_2ET) mono_2Ec_2Ebool_2ET)) (forall ((A_27a d) (A_27b d) (V0_3C_3C_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2EWF_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0_3C_3C_2E0)))) (forall ((V1H_2E0 u) (V2S_2E0 u)) (=> (forall ((V3f_2E0 u) (V4g_2E0 u) (V5x_2E0 u)) (let ((_let_1 ((s A_27a) V5x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) V1H_2E0)))) (let ((_let_6 (s A_27b))) (let ((_let_7 (_let_6 ((app_2E2 (_let_4 (_let_5 (_let_4 V3f_2E0)))) _let_1)))) (let ((_let_8 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (=> (forall ((V6z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V6z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 A_27b)))) (let ((_let_5 (s A_27b))) (let ((_let_6 (_let_5 ((app_2E2 (_let_4 V3f_2E0)) _let_2)))) (let ((_let_7 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_3 tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s (_let_3 _let_9)) V0_3C_3C_2E0)) _let_2))) (_let_1 V5x_2E0)))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_3 _let_7)) V2S_2E0)) _let_2))) _let_6))) (= _let_6 (_let_5 ((app_2E2 (_let_4 V4g_2E0)) _let_2))))))))))))))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_2 _let_8)) V2S_2E0)) _let_1))) _let_7))) (= _let_7 (_let_6 ((app_2E2 (_let_4 (_let_5 (_let_4 V4g_2E0)))) _let_1)))))))))))))) (exists ((V7f_2E0 u)) (forall ((V8x_2E0 u)) (let ((_let_1 ((s A_27a) V8x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V7f_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V1H_2E0)) _let_4))) _let_1))))))))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u) (V2t_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2t_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27b)) V0f_2E0)) _let_2) _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))))))))) (forall ((V0r mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V0r) (exists ((V2rt mono_2Etyop_2Enum_2Enum)) (and ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2EEXP V2rt) V0r)) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V1n) ((mono_2Ec_2Earithmetic_2EEXP (mono_2Ec_2Enum_2ESUC V2rt)) V0r)))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Emin_2Efun A_27a) (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1s_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V1s_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 ((s (_let_1 A_27b)) V0f_2E0)) _let_2)))))))))) (forall ((V0t Bool)) (= (and V0t V0t) V0t)) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((V0t Bool)) (= V0t (or V0t mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1t_2E0))) (let ((_let_4 (_let_2 V0s_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (c_2Ebool_2EIN_2E2 _let_1))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_6 _let_4)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (((c_2Epred__set_2EUNION_2E3 _let_4) _let_3) _let_1))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V0x (=> V3y_27 V2y)) (=> (not V3y_27) (=> V0x V1x_27))) (=> (=> V1x_27 V3y_27) (=> V0x V2y)))) (forall ((V0y Bool) (V1x Bool)) (= ((mono_2Ec_2EConseqConv_2EASM__MARKER V0y) V1x) V1x)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Etrichotomous_2E1 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)))) (forall ((V1a_2E0 u) (V2b_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2b_2E0))) (let ((_let_3 (_let_1 V1a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0R_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3))) (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))))))))))))))) (forall ((V0x Bool) (V1x_27 Bool)) (= ((mono_2Ec_2EConseqConv_2EASM__MARKER V0x) V1x_27) V1x_27)) (forall ((A_27a d) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V1Q_2E0 u) (V2R_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27a) V3i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (_let_3 V1Q_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V2R_2E0 u) (V5i_2E0 u)) (let ((_let_1 ((s A_27a) V5i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V4i_2E0 u)) (let ((_let_1 ((s A_27a) V4i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2R_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (c_2Ebool_2ERES__FORALL_2E2 (_let_2 V0P_2E0)))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_2 V1Q_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_9))) _let_3))))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((app_2E2 (_let_6 F1_2E0)) _let_9))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 (_let_7 (_let_2 ((app_2E2 (_let_6 F2_2E0)) _let_3))))))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t Bool)) (= (and mono_2Ec_2Ebool_2ET V0t) V0t)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) _let_1)) _let_1))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Epair_2EUNCURRY_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Epair_2EUNCURRY_2E0)) _let_4)))))))))) (= mono_2Ec_2Ebool_2EF _let_26) (forall ((V0c Bool) (V1x Bool)) (= (and V0c V1x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c) V1x) mono_2Ec_2Ebool_2EF))) (= mono_2Ec_2Epred__set_2EMIN__SET mono_2Ec_2Ewhile_2ELEAST) (forall ((V0t Bool)) (= (not V0t) (=> V0t mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2ESUBSET_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2ESUBSET_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0t Bool)) (=> V0t mono_2Ec_2Ebool_2ET)) (forall ((V0t Bool)) (= mono_2Ec_2Ebool_2ET (=> V0t V0t))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (not (and (mono_2Ec_2Earithmetic_2EEVEN V0n) (mono_2Ec_2Earithmetic_2EODD V0n)))) (forall ((V0t Bool)) (= (=> mono_2Ec_2Ebool_2EF V0t) mono_2Ec_2Ebool_2ET)) (= mono_2Ec_2EASCIInumbers_2Enum__from__oct__string ((mono_2Ec_2EASCIInumbers_2Es2n _let_35) mono_2Ec_2EASCIInumbers_2EUNHEX)) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((F0 V0m) V1n) (or (= V1n mono_2Ec_2Enum_2E0) (= V0m mono_2Ec_2Enum_2E0)))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Egcd_2Elcm V0m) V1n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((F0 V0m) V1n)) mono_2Ec_2Enum_2E0) ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) ((mono_2Ec_2Egcd_2Egcd V0m) V1n))))))) (forall ((V0t Bool)) (= (and V0t mono_2Ec_2Ebool_2EF) mono_2Ec_2Ebool_2EF)) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Ecombin_2EK_2E1 _let_1)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) c_2Ecombin_2EK_2E0)) _let_1))))))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (=> (forall ((V2s_2E0 u)) (let ((_let_1 ((s A_27a) V2s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0Q_2E0)) _let_1)))))))) (= (forall ((V3s_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3s_2E0))))) (forall ((V4s_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s A_27a) V4s_2E0)))))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebool_2ERES__ABSTRACT_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_6))) _let_4))))))))))) (forall ((V0t Bool)) (= (=> mono_2Ec_2Ebool_2ET V0t) V0t)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u) (V2e_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 c_2Elist_2ENIL_2E0))) (let ((_let_3 (_let_1 V0l2_2E0))) (let ((_let_4 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2e_2E0)) _let_2)))) (let ((_let_5 (_let_1 V1l1_2E0))) (= (= (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_3)) _let_4) (or (and (= _let_5 _let_2) (= _let_3 _let_4)) (and (= _let_5 _let_4) (= _let_3 _let_2)))))))))) (forall ((V0t Bool)) (= mono_2Ec_2Ebool_2ET (=> V0t mono_2Ec_2Ebool_2ET))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0t Bool)) (= (and mono_2Ec_2Ebool_2EF V0t) mono_2Ec_2Ebool_2EF)) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_1))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Elist_2ECONS_2E0)) _let_5))) _let_4)))))))))) (forall ((V0c Bool) (V1x Bool)) (= (=> (not V0c) V1x) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c) mono_2Ec_2Ebool_2ET) V1x))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (s A_27a))) (=> (not (= _let_2 (_let_1 c_2Elist_2ENIL_2E0))) (= (_let_3 (c_2Elist_2EHD_2E1 (_let_1 (c_2Elist_2EREVERSE_2E1 _let_2)))) (_let_3 (c_2Elist_2ELAST_2E1 _let_2)))))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> (not V2y) (=> V1x_27 V0x)) (=> (not V1x_27) (=> V3y_27 V2y))) (=> (or V3y_27 V1x_27) (or V2y V0x)))) (forall ((A_27a d) (V0t1_2E0 u) (V1t2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1t2_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) (_let_1 V0t1_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (=> (forall ((V2s_2E0 u)) (let ((_let_1 ((s A_27a) V2s_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0Q_2E0)) _let_1)))))))) (= (exists ((V4s_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s A_27a) V4s_2E0))))) (exists ((V3s_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3s_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (tyop_2Ellist_2Ellist A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption _let_2))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_1))) (let ((_let_8 (s _let_1))) (= (_let_8 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__BIND_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (= _let_25 mono_2Ec_2Ebool_2ET) (forall ((F6 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F3 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (F2 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (F1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= ((F6 V1m) V2n) ((mono_2Ec_2Earithmetic_2E_2D V1m) V2n))) (=> (forall ((V0a mono_2Etyop_2Enum_2Enum)) (= (F0 V0a) (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum F6))) (=> (forall ((V6n mono_2Etyop_2Enum_2Enum)) (= (= V6n mono_2Ec_2Enum_2E0) (F4 V6n))) (=> (forall ((V5m mono_2Etyop_2Enum_2Enum) (V4a mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V7d mono_2Etyop_2Enum_2Enum)) (= ((((F5 V5m) V4a) V3f) V7d) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V5m) V7d)) V4a) (V3f ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V4a)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V5m) V7d)))))) (=> (forall ((V4a mono_2Etyop_2Enum_2Enum) (V3f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V5m mono_2Etyop_2Enum_2Enum) (V6n mono_2Etyop_2Enum_2Enum)) (= ((((F3 V4a) V3f) V5m) V6n) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F4 V6n)) V4a) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum (((F5 V5m) V4a) V3f)) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V6n))))) (=> (forall ((V3f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum)) (V4a mono_2Etyop_2Enum_2Enum)) (= ((F2 V3f) V4a) (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F3 V4a) V3f)))) (=> (forall ((V3f (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (= (F1 V3f) (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum (F2 V3f)))) (= mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2Emeasure_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_20mono_2Etyop_2Enum_2Enum F0))) F1)))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 ((s A_27b) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (= (_let_2 ((c_2Elist_2ECONS_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_5)) c_2Elist_2ECONS_2E0)) _let_4))) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0c Bool) (V1x Bool)) (= (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c) V1x) mono_2Ec_2Ebool_2ET) (=> V0c V1x))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0t Bool)) (= V0t (and V0t mono_2Ec_2Ebool_2ET))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u) (V2u_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V0s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_5) _let_3))) _let_2))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_5) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2ESUBSET_2E2 _let_3) _let_2))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27b d) (X0_2E0 u) (X1 Bool)) (let ((_let_1 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X1)))) (let ((_let_2 ((s A_27b) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1a mono_2Etyop_2Enum_2Enum) (V2b mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Edivides_2Edivides V0p))) (=> (and (mono_2Ec_2Edivides_2Eprime V0p) (_let_1 ((mono_2Ec_2Earithmetic_2E_2A V1a) V2b))) (or (_let_1 V1a) (_let_1 V2b))))) (= (_let_32 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29 mono_2Ec_2Epair_2EUNCURRY_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum)) (_let_32 c_2Epair_2EUNCURRY_2E0)) (forall ((V0c Bool) (V1x Bool) (V2x_27 Bool) (V3y Bool) (V4y_27 Bool)) (let ((_let_1 (mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0c))) (=> (and (=> V2x_27 V1x) (=> V4y_27 V3y)) (=> ((_let_1 V2x_27) V4y_27) ((_let_1 V1x) V3y))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V0x V1x_27) (=> V1x_27 (=> V3y_27 V2y))) (=> (=> V1x_27 V3y_27) (=> V0x V2y)))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V1x_27 (=> V3y_27 V2y)) (=> V2y (=> V1x_27 V0x))) (=> (and V3y_27 V1x_27) (and V2y V0x)))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0t Bool)) (= (not (not V0t)) V0t)) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V2l_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2l_27_2E0))) (let ((_let_4 ((s A_27a) V3x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 (_let_5 _let_1))) (let ((_let_9 ((tyop_2Emin_2Efun _let_1) _let_8))) (= (_let_2 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) F0_2E0)) _let_7))) _let_3))) _let_4)) (_let_2 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 _let_7) _let_4))) (_let_2 ((c_2Elist_2ESNOC_2E2 _let_4) _let_3))) (_let_2 c_2Elist_2ENIL_2E0)))))))))))))) (forall ((V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1l_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) (_let_4 _let_1)))) (= (_let_2 ((c_2Erich__list_2ESUFFIX_2E2 _let_6) _let_3)) (_let_2 (((c_2Elist_2EFOLDL_2E3 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) F0_2E0)) _let_6))) (_let_2 c_2Elist_2ENIL_2E0)) _let_3))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0P (-> mono_2Etyop_2Enum_2Enum Bool)) (V1Q (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (mono_2Ec_2Epred__set_2EFINITE_2Emono_2Etyop_2Enum_2Enum V0P) (=> (= V0P mono_2Ec_2Epred__set_2EEMPTY_2Emono_2Etyop_2Enum_2Enum) (V1Q mono_2Ec_2Enum_2E0)) (forall ((V2x mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V2x) V0P) (forall ((V3y mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Ebool_2EIN_2Emono_2Etyop_2Enum_2Enum V3y) V0P) ((mono_2Ec_2Earithmetic_2E_3C_3D V3y) V2x)))) (V1Q V2x)))) (V1Q (mono_2Ec_2Epred__set_2EMAX__SET V0P)))) (forall ((A_27a d) (A_27b d) (V0s_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V0s_2E0)))) (forall ((V1g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 ((s (_let_1 A_27a)) V1g_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)))) (forall ((V2f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 ((s (_let_1 tyop_2Emin_2Ebool)) V0s_2E0))) (let ((_let_3 ((s (_let_1 A_27a)) V1g_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 tyop_2Enum_2Enum)) V2f_2E0))) (let ((_let_6 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Epred__set_2ESUM__IMAGE_2E2 _let_5) ((s (_let_4 tyop_2Emin_2Ebool)) ((c_2Epred__set_2EIMAGE_2E2 _let_3) _let_2))))) (j_mono_2Etyop_2Enum_2Enum (_let_6 ((c_2Epred__set_2ESUM__IMAGE_2E2 ((s (_let_1 tyop_2Enum_2Enum)) ((c_2Ecombin_2Eo_2E2 _let_5) _let_3))) _let_2)))))))))))))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V0x (=> V2y V3y_27)) (=> (not V3y_27) (=> V1x_27 V0x))) (=> (=> V0x V2y) (=> V1x_27 V3y_27)))) (and (forall ((V0v (-> mono_2Etyop_2Enum_2Enum Bool)) (V1n mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EdefCNF_2EDEF V0v) V1n) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) mono_2Ec_2Ebool_2ET)) (forall ((V2v (-> mono_2Etyop_2Enum_2Enum Bool)) (V3n mono_2Etyop_2Enum_2Enum) (V4x mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29) (V5xs mono_2Etyop_2Elist_2Elist_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_29)) (let ((_let_1 (mono_2Ec_2EdefCNF_2EDEF V2v))) (= ((_let_1 V3n) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V4x) V5xs)) (and (((mono_2Ec_2EdefCNF_2EUNIQUE V2v) V3n) V4x) ((_let_1 (mono_2Ec_2Enum_2ESUC V3n)) V5xs)))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V1x_27 V0x) (=> V1x_27 (=> V2y V3y_27))) (=> (=> V0x V2y) (=> V1x_27 V3y_27)))) (forall ((V0t Bool)) (=> mono_2Ec_2Ebool_2EF V0t)) (forall ((V0t Bool)) (= V0t (or mono_2Ec_2Ebool_2EF V0t))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_1) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod _let_1) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0m2 mono_2Etyop_2Enum_2Enum) (V1m1 mono_2Etyop_2Enum_2Enum) (V2P (-> mono_2Etyop_2Enum_2Enum Bool))) (=> (and (V2P V1m1) (forall ((V4n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V4n) V0m2) (not (V2P V4n)))) (V2P V0m2) (forall ((V3n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V3n) V1m1) (not (V2P V3n))))) (= V1m1 V0m2))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((F9 (-> mono_2Etyop_2Enum_2Enum Bool)) (F7 (-> mono_2Etyop_2Enum_2Enum Bool)) (F66 (-> mono_2Etyop_2Enum_2Enum Bool)) (F64 (-> mono_2Etyop_2Enum_2Enum Bool)) (F61 (-> mono_2Etyop_2Enum_2Enum Bool)) (F59 (-> mono_2Etyop_2Enum_2Enum Bool)) (F57 (-> mono_2Etyop_2Enum_2Enum Bool)) (F55 (-> mono_2Etyop_2Enum_2Enum Bool)) (F52 (-> mono_2Etyop_2Enum_2Enum Bool)) (F50 (-> mono_2Etyop_2Enum_2Enum Bool)) (F48 (-> mono_2Etyop_2Enum_2Enum Bool)) (F46 (-> mono_2Etyop_2Enum_2Enum Bool)) (F44 (-> mono_2Etyop_2Enum_2Enum Bool)) (F42 (-> mono_2Etyop_2Enum_2Enum Bool)) (F4 (-> mono_2Etyop_2Enum_2Enum Bool)) (F39 (-> mono_2Etyop_2Enum_2Enum Bool)) (F37 (-> mono_2Etyop_2Enum_2Enum Bool)) (F36 (-> mono_2Etyop_2Enum_2Enum Bool)) (F34 (-> mono_2Etyop_2Enum_2Enum Bool)) (F31 (-> mono_2Etyop_2Enum_2Enum Bool)) (F29 (-> mono_2Etyop_2Enum_2Enum Bool)) (F26 (-> mono_2Etyop_2Enum_2Enum Bool)) (F24 (-> mono_2Etyop_2Enum_2Enum Bool)) (F22 (-> mono_2Etyop_2Enum_2Enum Bool)) (F20 (-> mono_2Etyop_2Enum_2Enum Bool)) (F2 (-> mono_2Etyop_2Enum_2Enum Bool)) (F17 (-> mono_2Etyop_2Enum_2Enum Bool)) (F15 (-> mono_2Etyop_2Enum_2Enum Bool)) (F13 (-> mono_2Etyop_2Enum_2Enum Bool)) (F11 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum Bool)) (F8 (-> mono_2Etyop_2Enum_2Enum Bool)) (F65 (-> mono_2Etyop_2Enum_2Enum Bool)) (F62 (-> mono_2Etyop_2Enum_2Enum Bool)) (F60 (-> mono_2Etyop_2Enum_2Enum Bool)) (F6 (-> mono_2Etyop_2Enum_2Enum Bool)) (F58 (-> mono_2Etyop_2Enum_2Enum Bool)) (F56 (-> mono_2Etyop_2Enum_2Enum Bool)) (F53 (-> mono_2Etyop_2Enum_2Enum Bool)) (F51 (-> mono_2Etyop_2Enum_2Enum Bool)) (F5 (-> mono_2Etyop_2Enum_2Enum Bool)) (F49 (-> mono_2Etyop_2Enum_2Enum Bool)) (F47 (-> mono_2Etyop_2Enum_2Enum Bool)) (F45 (-> mono_2Etyop_2Enum_2Enum Bool)) (F43 (-> mono_2Etyop_2Enum_2Enum Bool)) (F41 (-> mono_2Etyop_2Enum_2Enum Bool)) (F40 (-> mono_2Etyop_2Enum_2Enum Bool)) (F38 (-> mono_2Etyop_2Enum_2Enum Bool)) (F35 (-> mono_2Etyop_2Enum_2Enum Bool)) (F33 (-> mono_2Etyop_2Enum_2Enum Bool)) (F30 (-> mono_2Etyop_2Enum_2Enum Bool)) (F3 (-> mono_2Etyop_2Enum_2Enum Bool)) (F27 (-> mono_2Etyop_2Enum_2Enum Bool)) (F25 (-> mono_2Etyop_2Enum_2Enum Bool)) (F23 (-> mono_2Etyop_2Enum_2Enum Bool)) (F21 (-> mono_2Etyop_2Enum_2Enum Bool)) (F18 (-> mono_2Etyop_2Enum_2Enum Bool)) (F16 (-> mono_2Etyop_2Enum_2Enum Bool)) (F14 (-> mono_2Etyop_2Enum_2Enum Bool)) (F12 (-> mono_2Etyop_2Enum_2Enum Bool)) (F10 (-> mono_2Etyop_2Enum_2Enum Bool)) (F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F67 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F63 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F54 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F32 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F28 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool)) (F19 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V19t mono_2Etyop_2Enum_2Enum)) (= (F9 V19t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V15t mono_2Etyop_2Enum_2Enum)) (= (F7 V15t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V113t mono_2Etyop_2Enum_2Enum)) (= (F66 V113t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V109t mono_2Etyop_2Enum_2Enum)) (= (F64 V109t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V104t mono_2Etyop_2Enum_2Enum)) (= (F61 V104t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V101t mono_2Etyop_2Enum_2Enum)) (= (F59 V101t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V96t mono_2Etyop_2Enum_2Enum)) (= (F57 V96t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V93t mono_2Etyop_2Enum_2Enum)) (= (F55 V93t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V89t mono_2Etyop_2Enum_2Enum)) (= (F52 V89t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V86t mono_2Etyop_2Enum_2Enum)) (= (F50 V86t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V83t mono_2Etyop_2Enum_2Enum)) (= (F48 V83t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V80t mono_2Etyop_2Enum_2Enum)) (= (F46 V80t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V77t mono_2Etyop_2Enum_2Enum)) (= (F44 V77t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V73t mono_2Etyop_2Enum_2Enum)) (= (F42 V73t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V11t mono_2Etyop_2Enum_2Enum)) (= (F4 V11t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V69t mono_2Etyop_2Enum_2Enum)) (= (F39 V69t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V65t mono_2Etyop_2Enum_2Enum)) (= (F37 V65t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V63t mono_2Etyop_2Enum_2Enum)) (= (F36 V63t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V59t mono_2Etyop_2Enum_2Enum)) (= (F34 V59t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V55t mono_2Etyop_2Enum_2Enum)) (= (F31 V55t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V51t mono_2Etyop_2Enum_2Enum)) (= (F29 V51t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V46t mono_2Etyop_2Enum_2Enum)) (= (F26 V46t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V43t mono_2Etyop_2Enum_2Enum)) (= (F24 V43t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V38t mono_2Etyop_2Enum_2Enum)) (= (F22 V38t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V35t mono_2Etyop_2Enum_2Enum)) (= (F20 V35t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V7t mono_2Etyop_2Enum_2Enum)) (= (F2 V7t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V31t mono_2Etyop_2Enum_2Enum)) (= (F17 V31t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V28t mono_2Etyop_2Enum_2Enum)) (= (F15 V28t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V25t mono_2Etyop_2Enum_2Enum)) (= (F13 V25t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V22t mono_2Etyop_2Enum_2Enum)) (= (F11 V22t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V5t mono_2Etyop_2Enum_2Enum)) (= (F1 V5t) mono_2Ec_2Ebool_2ET)) (=> (forall ((V17t mono_2Etyop_2Enum_2Enum)) (= (F8 V17t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V111t mono_2Etyop_2Enum_2Enum)) (= (F65 V111t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V106t mono_2Etyop_2Enum_2Enum)) (= (F62 V106t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V102t mono_2Etyop_2Enum_2Enum)) (= (F60 V102t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V14t mono_2Etyop_2Enum_2Enum)) (= (F6 V14t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V99t mono_2Etyop_2Enum_2Enum)) (= (F58 V99t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V95t mono_2Etyop_2Enum_2Enum)) (= (F56 V95t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V90t mono_2Etyop_2Enum_2Enum)) (= (F53 V90t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V88t mono_2Etyop_2Enum_2Enum)) (= (F51 V88t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V13t mono_2Etyop_2Enum_2Enum)) (= (F5 V13t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V85t mono_2Etyop_2Enum_2Enum)) (= (F49 V85t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V81t mono_2Etyop_2Enum_2Enum)) (= (F47 V81t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V78t mono_2Etyop_2Enum_2Enum)) (= (F45 V78t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V75t mono_2Etyop_2Enum_2Enum)) (= (F43 V75t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V72t mono_2Etyop_2Enum_2Enum)) (= (F41 V72t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V71t mono_2Etyop_2Enum_2Enum)) (= (F40 V71t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V67t mono_2Etyop_2Enum_2Enum)) (= (F38 V67t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V61t mono_2Etyop_2Enum_2Enum)) (= (F35 V61t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V57t mono_2Etyop_2Enum_2Enum)) (= (F33 V57t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V53t mono_2Etyop_2Enum_2Enum)) (= (F30 V53t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V9t mono_2Etyop_2Enum_2Enum)) (= (F3 V9t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V48t mono_2Etyop_2Enum_2Enum)) (= (F27 V48t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V44t mono_2Etyop_2Enum_2Enum)) (= (F25 V44t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V41t mono_2Etyop_2Enum_2Enum)) (= (F23 V41t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V37t mono_2Etyop_2Enum_2Enum)) (= (F21 V37t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V32t mono_2Etyop_2Enum_2Enum)) (= (F18 V32t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V30t mono_2Etyop_2Enum_2Enum)) (= (F16 V30t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V27t mono_2Etyop_2Enum_2Enum)) (= (F14 V27t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V23t mono_2Etyop_2Enum_2Enum)) (= (F12 V23t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V20t mono_2Etyop_2Enum_2Enum)) (= (F10 V20t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3t mono_2Etyop_2Enum_2Enum)) (= (F0 V3t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V114t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V114t)) ((F67 V1a) V114t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V107t mono_2Etyop_2Enum_2Enum)) (= ((F63 V0b) V107t) (not (V0b V107t)))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V91t mono_2Etyop_2Enum_2Enum)) (= ((F54 V0b) V91t) (not (V0b V91t)))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V56t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V56t)) ((F32 V1a) V56t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V49t mono_2Etyop_2Enum_2Enum)) (= (not (V0b V49t)) ((F28 V0b) V49t))) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V33t mono_2Etyop_2Enum_2Enum)) (= ((F19 V0b) V33t) (not (V0b V33t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V0b))) (let ((_let_2 (mono_2Ec_2ETemporal__Logic_2ESWHEN V1a))) (let ((_let_3 (mono_2Ec_2ETemporal__Logic_2EEVENTUAL V1a))) (let ((_let_4 (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V0b))) (let ((_let_5 (mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a))) (let ((_let_6 (mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a))) (let ((_let_7 (mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL V1a))) (let ((_let_8 (mono_2Ec_2ETemporal__Logic_2EUNTIL V1a))) (and (forall ((V2x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT F0) V2x) mono_2Ec_2Ebool_2EF)) (forall ((V4x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2ENEXT F1) V4x) mono_2Ec_2Ebool_2ET)) (forall ((V8x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS F3) V8x) mono_2Ec_2Ebool_2EF)) (forall ((V12x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL F5) V12x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL F7) V0b) _let_1) (forall ((V16x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) F8) V16x) mono_2Ec_2Ebool_2EF)) (= (_let_8 F12) (mono_2Ec_2ETemporal__Logic_2EALWAYS V1a)) (forall ((V24x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) F13) V24x) mono_2Ec_2Ebool_2ET)) (= (_let_8 V1a) V1a) (forall ((V26x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN F14) V0b) V26x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2ETemporal__Logic_2EWHEN F18) V0b) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F19 V0b))) (forall ((V34x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN F20) V0b) V34x) mono_2Ec_2Ebool_2ET)) (forall ((V36x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) F21) V36x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) F22) V1a) (forall ((V42x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE F24) V0b) V42x) (not (V0b V42x)))) (forall ((V45x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) F26) V45x) mono_2Ec_2Ebool_2EF)) (forall ((V47x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) V1a) V47x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE F27) V0b) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F28 V0b))) (forall ((V54x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) F31) V54x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V1a) (mono_2Ec_2ETemporal__Logic_2EALWAYS (F32 V1a))) (forall ((V58x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPNEXT F34) V58x) mono_2Ec_2Ebool_2ET)) (forall ((V68x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL F39) V68x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL F41) V0b) V0b) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) V1a) V1a) (= (_let_5 V1a) V1a) (forall ((V84x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN F49) V0b) V84x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN F50) V0b) _let_4) (forall ((V87x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSWHEN V1a) F51) V87x) mono_2Ec_2Ebool_2EF)) (forall ((V92x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN F55) V0b) V92x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) F57) V1a) (forall ((V100x mono_2Etyop_2Enum_2Enum)) (= (not (V0b V100x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE F59) V0b) V100x))) (forall ((V103x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) F61) V103x) mono_2Ec_2Ebool_2EF)) (forall ((V110x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) F65) V110x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) V1a) (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F67 V1a))) (forall ((V112x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE V1a) F66) V112x) mono_2Ec_2Ebool_2EF)) (forall ((V108x mono_2Etyop_2Enum_2Enum)) (= (not (V0b V108x)) (((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE F64) V0b) V108x))) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPBEFORE F62) V0b) (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F63 V0b))) (forall ((V105x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) V1a) V105x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE V1a) F60) _let_7) (forall ((V98x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSBEFORE F58) V0b) V98x) mono_2Ec_2Ebool_2EF)) (forall ((V97x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) V1a) V97x) mono_2Ec_2Ebool_2ET)) (forall ((V94x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN V1a) F56) V94x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPWHEN F53) V0b) (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS (F54 V0b))) (= (_let_6 V1a) _let_7) (= (_let_6 F52) V1a) (forall ((V82x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL V1a) F48) V82x) mono_2Ec_2Ebool_2ET)) (= (_let_5 F47) (mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS V1a)) (forall ((V79x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL F46) V0b) V79x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPUNTIL F45) V0b) V0b) (forall ((V76x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) F44) V76x) mono_2Ec_2Ebool_2ET)) (forall ((V74x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL V1a) F43) V74x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSUNTIL F42) V0b) _let_4) (forall ((V70x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPEVENTUAL F40) V70x) mono_2Ec_2Ebool_2EF)) (forall ((V66x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS F38) V66x) mono_2Ec_2Ebool_2EF)) (forall ((V64x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPALWAYS F37) V64x) mono_2Ec_2Ebool_2ET)) (forall ((V62x mono_2Etyop_2Enum_2Enum)) (= (not (mono_2Ec_2EPast__Temporal__Logic_2EInitPoint V62x)) ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT F36) V62x))) (forall ((V60x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2EPast__Temporal__Logic_2EPSNEXT F35) V60x) mono_2Ec_2Ebool_2EF)) (= (mono_2Ec_2EPast__Temporal__Logic_2EPNEXT F33) mono_2Ec_2EPast__Temporal__Logic_2EInitPoint) (forall ((V52x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) F30) V52x) mono_2Ec_2Ebool_2ET)) (forall ((V50x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE F29) V0b) V50x) (not (V0b V50x)))) (= ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V1a) F25) _let_3) (forall ((V40x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESBEFORE F23) V0b) V40x) mono_2Ec_2Ebool_2EF)) (forall ((V39x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EWHEN V1a) V1a) V39x) mono_2Ec_2Ebool_2ET)) (= (_let_2 V1a) _let_3) (= (_let_2 F17) V1a) (forall ((V29x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESWHEN V1a) F16) V29x) mono_2Ec_2Ebool_2EF)) (= ((mono_2Ec_2ETemporal__Logic_2ESWHEN F15) V0b) _let_1) (forall ((V21x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EUNTIL F11) V0b) V21x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2ETemporal__Logic_2EUNTIL F10) V0b) V0b) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) V1a) V1a) (forall ((V18x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2ESUNTIL V1a) F9) V18x) mono_2Ec_2Ebool_2ET)) (= ((mono_2Ec_2ETemporal__Logic_2ESUNTIL F6) V0b) V0b) (forall ((V10x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EEVENTUAL F4) V10x) mono_2Ec_2Ebool_2ET)) (forall ((V6x mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2ETemporal__Logic_2EALWAYS F2) V6x) mono_2Ec_2Ebool_2ET))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (forall ((A_27a d) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V1Q_2E0 u) (V2R_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27a) V3i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V1Q_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_6) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (=> (forall ((V2R_2E0 u) (V5i_2E0 u)) (let ((_let_1 ((s A_27a) V5i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V2R_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V1Q_2E0 u) (V4i_2E0 u)) (let ((_let_1 ((s A_27a) V4i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V2R_2E0))) (let ((_let_4 (_let_2 V1Q_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (c_2Ebool_2ERES__EXISTS_2E2 (_let_2 V0P_2E0)))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_2 ((app_2E2 (_let_7 F1_2E0)) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_2 ((app_2E2 (_let_7 F2_2E0)) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 (_let_2 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3)))))))))))))))))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> (not V1x_27) (=> V2y V3y_27)) (=> (not V2y) (=> V0x V1x_27))) (=> (or V2y V0x) (or V1x_27 V3y_27)))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27b)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((A_27a d) (V0l_2E0 u)) (= (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Elist_2ENULL_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))))) (exists ((V1e_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 ((s A_27a) V1e_2E0)) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0))))))))) (forall ((V0t Bool)) (= (or V0t V0t) V0t)) (forall ((A_27a d) (A_27b d) (F0_2E0 u)) (=> (forall ((V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0)))) (exists ((V4v2_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V4v2_2E0)))))))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (s A_27a))) (=> (forall ((V3v2_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)) V2P_2E0)) ((s A_27b) V3v2_2E0))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (((c_2EquantHeuristics_2ESIMPLE__GUESS__FORALL_2E3 (_let_3 V0v_2E0)) (_let_3 V1i_2E0)) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) F0_2E0)) ((s _let_1) V2P_2E0))))))))))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V2y (=> V0x V1x_27)) (=> V1x_27 (=> V2y V3y_27))) (=> (and V2y V0x) (and V3y_27 V1x_27)))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((A_27a d) (V0f_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ecombin_2EASSOC_2E1 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)))) (forall ((V1e_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ecombin_2ELEFT__ID_2E2 ((s (_let_1 (_let_1 A_27a))) V0f_2E0)) ((s A_27a) V1e_2E0)))) (forall ((V2l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s (tyop_2Elist_2Elist _let_1)) V2l_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V1e_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 ((s (_let_5 (_let_5 A_27a))) V0f_2E0))) (let ((_let_7 (s _let_1))) (let ((_let_8 ((c_2Elist_2EFOLDR_2E3 _let_6) _let_4))) (= (_let_3 (_let_8 (_let_7 (c_2Elist_2EFLAT_2E1 _let_2)))) (_let_3 (_let_8 (_let_7 ((c_2Elist_2EMAP_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) ((c_2Elist_2EFOLDR_2E2 _let_6) _let_4))) _let_2)))))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (V0b Bool) (V1t_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b))) _let_2) _let_2)) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0t1_2E0 u) (V1t2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0t1_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_2) (_let_1 V1t2_2E0))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1ll1_2E0 u) (V2ll2_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27a)))) (let ((_let_2 (_let_1 V2ll2_2E0))) (let ((_let_3 (c_2Ellist_2ELFILTER_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_4 (_let_1 V1ll1_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ellist_2ELFINITE_2E1 _let_4))) (= (_let_1 (_let_3 (_let_1 ((c_2Ellist_2ELAPPEND_2E2 _let_4) _let_2)))) (_let_1 ((c_2Ellist_2ELAPPEND_2E2 (_let_1 (_let_3 _let_4))) (_let_1 (_let_3 _let_2))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 (tyop_2Emin_2Efun (_let_4 A_27b)))) (let ((_let_8 (_let_7 (_let_7 tyop_2Emin_2Ebool)))) (let ((_let_9 ((tyop_2Emin_2Efun _let_2) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2Equotient_2E_3D_3D_3D_3E_2E2 _let_6) _let_3)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) c_2Equotient_2E_3D_3D_3D_3E_2E0)) _let_6))) _let_3)))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (A_27b d) (V0p_2E0 u) (V1i_2E0 u) (V2g_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (= (exists ((V3x_2E0 u)) (let ((_let_1 ((s A_27b) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s A_27a))) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_2 tyop_2Emin_2Ebool)) V2g_2E0)) _let_1))) (= (_let_3 V1i_2E0) (_let_3 ((app_2E2 ((s (_let_2 A_27a)) V0p_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2EpatternMatches_2EPMATCH__ROW__COND__EX_2E3 ((s A_27a) V1i_2E0)) ((s (_let_1 A_27a)) V0p_2E0)) ((s (_let_1 tyop_2Emin_2Ebool)) V2g_2E0))))))) (forall ((V0t Bool)) (= (=> V0t mono_2Ec_2Ebool_2EF) (= V0t mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) tyop_2Eone_2Eone)) A_27b))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__FORALL_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__FORALL_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1N_2E0 u) (V0b_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V0b_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1N_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_5 A_27c))) (let ((_let_10 (_let_3 _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_1))) _let_2)) (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1)))))))))))))) (=> (forall ((V1N_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1N_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0b_2E0 u) (V1N_2E0 u) (V2M_2E0 u)) (let ((_let_1 ((s A_27a) V2M_2E0))) (let ((_let_2 ((s A_27b) V0b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V1N_2E0))) (let ((_let_9 (_let_5 A_27c))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_6))) (let ((_let_12 (s A_27c))) (= (_let_12 ((app_2E2 ((s _let_4) ((c_2Ebool_2Eliteral__case_2E2 (_let_7 ((app_2E2 ((s (_let_11 _let_6)) F0_2E0)) _let_8))) _let_1))) _let_2)) (_let_12 ((c_2Ebool_2Eliteral__case_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_8))) _let_2))) _let_1))))))))))))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (and V0P (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))) (exists ((V2x_2E0 u)) (and V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1b Bool) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3y_2E0))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1b))))) (= (_let_4 (_let_3 (_let_1 ((_let_6 _let_5) _let_2)))) (_let_4 ((_let_6 (_let_4 (_let_3 _let_5))) (_let_4 (_let_3 _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) (let ((_let_2 (mono_2Ec_2Egcd_2Egcd ((mono_2Ec_2Earithmetic_2EDIV V0m) _let_1)))) (let ((_let_3 ((mono_2Ec_2Egcd_2Egcd V0m) V1n))) (let ((_let_4 (mono_2Ec_2Earithmetic_2EEVEN V0m))) (and (=> (and (mono_2Ec_2Earithmetic_2EEVEN V1n) _let_4) (= _let_3 ((mono_2Ec_2Earithmetic_2E_2A _let_1) (_let_2 ((mono_2Ec_2Earithmetic_2EDIV V1n) _let_1))))) (=> (and (mono_2Ec_2Earithmetic_2EODD V1n) _let_4) (= _let_3 (_let_2 V1n))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V1y_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V1y_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V2x_2E0))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EONTO_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V0x_2E0)) (_let_1 V1y_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2EisPREFIX_2E2 (_let_1 (c_2Elist_2EFRONT_2E1 _let_2))) _let_2)))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (exists ((V3x_2E0 u)) (or V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))) (or (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0))))) V0P))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (exists ((V3f_2E0 u)) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_3) ((app_2E2 ((s (_let_2 _let_3)) V0P_2E0)) _let_1))) ((s A_27b) ((app_2E2 ((s (_let_2 A_27b)) V3f_2E0)) _let_1)))))))))) (forall ((V1x_2E0 u)) (exists ((V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0))))))))) (and (= _let_26 mono_2Ec_2Ebool_2EF) (= mono_2Ec_2Ebool_2ET _let_25) (forall ((V0t Bool)) (= (not (not V0t)) V0t))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Etransfer_2Etotal_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Etransfer_2Etotal_2E0)) _let_2)))))))) (forall ((V0t Bool)) (and (= (=> V0t mono_2Ec_2Ebool_2ET) mono_2Ec_2Ebool_2ET) (= (not V0t) (=> V0t mono_2Ec_2Ebool_2EF)) (= mono_2Ec_2Ebool_2ET (=> V0t V0t)) (= (=> mono_2Ec_2Ebool_2EF V0t) mono_2Ec_2Ebool_2ET) (= (=> mono_2Ec_2Ebool_2ET V0t) V0t))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Estring_2Echar Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 (mono_2Ec_2Emin_2E_40_2Emono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29 V0))) (_let_3 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) ((s (tyop_2Ellist_2Ellist A_27a)) V0l_2E0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) c_2Elist_2ENIL_2E0))))))) (forall ((V1n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s (tyop_2Eoption_2Eoption (tyop_2Elist_2Elist A_27b))))) (= (_let_1 ((c_2Ellist_2ELTAKE_2E2 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V1n)))) ((s (tyop_2Ellist_2Ellist A_27b)) c_2Ellist_2ELNIL_2E0))) (_let_1 c_2Eoption_2ENONE_2E0)))) (forall ((V2n mono_2Etyop_2Enum_2Enum) (V3h_2E0 u) (V4t_2E0 u)) (let ((_let_1 (s (tyop_2Ellist_2Ellist A_27c)))) (let ((_let_2 (_let_1 V4t_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (tyop_2Elist_2Elist A_27c))) (let ((_let_5 (s (tyop_2Eoption_2Eoption _let_4)))) (let ((_let_6 ((s A_27c) V3h_2E0))) (= (_let_5 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Enum_2ESUC V2n)))) (_let_1 ((c_2Ellist_2ELCONS_2E2 _let_6) _let_2)))) (_let_5 ((c_2Eoption_2EOPTION__MAP_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) (c_2Elist_2ECONS_2E1 _let_6))) (_let_5 ((c_2Ellist_2ELTAKE_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_2)))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V1 V0) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Elist_2EHD_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Elist_2EHD_2E0)) _let_2))))))) (forall ((V0b Bool) (V1t1 Bool) (V2t2 Bool)) (= (or (and (not V0b) V2t2) (and V1t1 V0b)) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0b) V1t1) V2t2))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1f_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1f_2E0))) (let ((_let_8 (app_2E2 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_4 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F2_2E0)) _let_7))) _let_3))) _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2)))) (= _let_3 _let_2)))))))))))))) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1f_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_4 V0P_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_7 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F1_2E0)) _let_8))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 _let_8) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F2_2E0)) _let_5))) _let_1))))))))))))))))) (=> (forall ((V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (_let_2 V0P_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s _let_6))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) (_let_2 ((app_2E2 (_let_7 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) (_let_2 ((app_2E2 (_let_7 ((app_2E2 ((s (_let_5 _let_6)) F1_2E0)) _let_4))) _let_3)))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2Ebool_2ERES__SELECT_2E2 _let_4) _let_3)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__SELECT_2E0)) _let_4))) _let_3))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (=> (not V1P_27) (= V2Q V3Q_27)) (=> (not V2Q) (= V0P V1P_27))) (= (or V0P V2Q) (or V1P_27 V3Q_27)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (forall ((V0x Bool) (V1x_27 Bool)) (= (and V1x_27 V0x) (forall ((V2t Bool)) (=> (=> V0x (=> V1x_27 V2t)) V2t)))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((V0t Bool)) (=> (not V0t) (= V0t mono_2Ec_2Ebool_2EF))) (forall ((V0t Bool)) (or (= V0t mono_2Ec_2Ebool_2ET) (= V0t mono_2Ec_2Ebool_2EF))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum X1)))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist A_27a))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Elist_2EGENLIST_2E2 _let_4) _let_1)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Elist_2EGENLIST_2E0)) _let_4))) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1N_2E0 u) (V0b_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27b) V0b_2E0))) (let ((_let_2 ((s A_27a) V4x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V1N_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_5 A_27c))) (let ((_let_10 (_let_3 _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_1))) _let_2)) (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1)))))))))))))) (=> (forall ((V1N_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1N_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) F0_2E0)) _let_5))) _let_1)) (_let_6 ((app_2E2 _let_5) _let_1)))))))))) (forall ((V0b_2E0 u) (V1N_2E0 u) (V2M_2E0 u)) (let ((_let_1 ((s A_27a) V2M_2E0))) (let ((_let_2 ((s A_27b) V0b_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 A_27c))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 (s _let_6))) (let ((_let_8 (_let_7 V1N_2E0))) (let ((_let_9 (_let_5 A_27c))) (let ((_let_10 (_let_3 _let_9))) (let ((_let_11 (tyop_2Emin_2Efun _let_6))) (let ((_let_12 (s A_27c))) (= (_let_12 ((app_2E2 ((s _let_4) ((c_2Ebool_2ELET_2E2 (_let_7 ((app_2E2 ((s (_let_11 _let_6)) F0_2E0)) _let_8))) _let_1))) _let_2)) (_let_12 ((c_2Ebool_2ELET_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_11 _let_10)) F1_2E0)) _let_8))) _let_2))) _let_1))))))))))))))))))) (forall ((V0a (-> mono_2Etyop_2Enum_2Enum Bool)) (V1b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2ENEXT ((mono_2Ec_2ETemporal__Logic_2ESBEFORE V0a) V1b)) ((mono_2Ec_2ETemporal__Logic_2ESBEFORE (mono_2Ec_2ETemporal__Logic_2ENEXT V0a)) (mono_2Ec_2ETemporal__Logic_2ENEXT V1b)))) (forall ((A_27a d) (V0g_2E0 u) (V1f_2E0 u) (V2Q_2E0 u) (V3P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2Q_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V3P_2E0))) (=> (= _let_4 _let_2) (=> (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V2Q_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0g_2E0)) _let_1))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) (_let_1 V1f_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__FORALL_2E2 _let_2) (_let_1 V0g_2E0)))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27c) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS__GAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((V0t Bool)) (and (= mono_2Ec_2Ebool_2ET (or mono_2Ec_2Ebool_2ET V0t)) (= (or V0t V0t) V0t) (= V0t (or mono_2Ec_2Ebool_2EF V0t)) (= (or V0t mono_2Ec_2Ebool_2EF) V0t) (= (or V0t mono_2Ec_2Ebool_2ET) mono_2Ec_2Ebool_2ET))) (forall ((V0t Bool)) (=> (=> V0t mono_2Ec_2Ebool_2EF) (not V0t))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 ((tyop_2Esum_2Esum tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_3 ((tyop_2Epair_2Eprod (_let_2 (_let_2 tyop_2Emin_2Ebool))) ((tyop_2Epair_2Eprod _let_1) _let_1)))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (_let_4 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_3) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Esum_2Esum_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V1)))))))))) (= (forall ((V0t Bool)) V0t) mono_2Ec_2Ebool_2EF) (forall ((A_27a d)) (and (forall ((V0l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 V0l_2E0)) (_let_1 c_2Elist_2ENIL_2E0)))) mono_2Ec_2Ebool_2ET))) (forall ((V3x1_2E0 u) (V4l1_2E0 u) (V5x2_2E0 u) (V6l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V6l2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 V5x2_2E0))) (let ((_let_5 (_let_1 V4l1_2E0))) (let ((_let_6 (_let_3 V3x1_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erich__list_2EIS__SUFFIX_2E2 _let_5) _let_2))) (= _let_6 _let_4)) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 ((c_2Elist_2ESNOC_2E2 _let_6) _let_5))) (_let_1 ((c_2Elist_2ESNOC_2E2 _let_4) _let_2)))))))))))))) (forall ((V1x_2E0 u) (V2l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Erich__list_2EIS__SUFFIX_2E2 (_let_1 c_2Elist_2ENIL_2E0)) (_let_1 ((c_2Elist_2ESNOC_2E2 ((s A_27a) V1x_2E0)) (_let_1 V2l_2E0)))))) mono_2Ec_2Ebool_2EF))))) (forall ((A_27a d) (V0P_2E0 u)) (= (forall ((V2x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))) (not (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1x_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (exists ((V2p1_2E0 u) (V3p2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V2p1_2E0)))) ((s A_27b) V3p2_2E0)))))) (exists ((V1p_2E0 u)) (let ((_let_1 ((s ((tyop_2Epair_2Eprod A_27a) A_27b)) V1p_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_2)) V0P_2E0)) ((s A_27a) (c_2Epair_2EFST_2E1 _let_1))))) ((s A_27b) (c_2Epair_2ESND_2E1 _let_1)))))))))) (forall ((V0A Bool) (V1B Bool)) (let ((_let_1 (or V1B V0A))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod (tyop_2Elist_2Elist A_27a)) (tyop_2Elist_2Elist A_27b)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Elist_2EUNZIP_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Elist_2EUNZIP_2E0)) _let_2)))))))) (forall ((V0f (-> Bool Bool))) (or (forall ((V2x Bool)) (= (V0f V2x) mono_2Ec_2Ebool_2EF)) (forall ((V4x Bool)) (= (V0f V4x) (not V4x))) (forall ((V3x Bool)) (= (V0f V3x) V3x)) (forall ((V1x Bool)) (= (V0f V1x) mono_2Ec_2Ebool_2ET)))) (forall ((A_27a d) (A_27b d) (V0R_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Etotal_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Esurj_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Etransfer_2Ebitotal_2E1 _let_1))))))) (forall ((V0 Bool)) (= (mono_2Ec_2Ebool_2E_7E V0) (not V0))) (forall ((A_27a d) (F0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1i mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (= (not (= V1i V2n)) ((F0 V1i) V2n))) (forall ((V0xs_2E0 u) (V1i mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum) (V3x_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_2 ((s A_27a) V3x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V0xs_2E0))) (let ((_let_5 (s tyop_2Enum_2Enum))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (let ((_let_7 (c_2Elist_2EoEL_2E2 (_let_5 (i_mono_2Etyop_2Enum_2Enum V2n))))) (= (_let_1 (_let_7 (_let_3 (((c_2Elist_2ELUPDATE_2E3 _let_2) (_let_5 (i_mono_2Etyop_2Enum_2Enum V1i))) _let_4)))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_6 (i_mono_2Etyop_2Emin_2Ebool ((F0 V1i) V2n)))) (_let_1 (_let_7 _let_4))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_6 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Eprim__rec_2E_3C V1i) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_4))))))) (_let_1 (c_2Eoption_2ESOME_2E1 _let_2))) (_let_1 c_2Eoption_2ENONE_2E0)))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (= (= _let_1 _let_1) mono_2Ec_2Ebool_2ET))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> V0t1 (=> V1t2 (and V0t1 V1t2)))) (forall ((A_27a d) (V0f_2E0 u)) (=> (forall ((V1x_2E0 u) (V2y_2E0 u) (V3z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3z_2E0))) (let ((_let_3 (_let_1 V2y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0f_2E0)))) (let ((_let_7 (s _let_5))) (let ((_let_8 (app_2E2 (_let_7 (_let_6 (_let_1 V1x_2E0)))))) (= (_let_1 (_let_8 (_let_1 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2)))) (_let_1 ((app_2E2 (_let_7 (_let_6 (_let_1 (_let_8 _let_3))))) _let_2)))))))))))) (=> (forall ((V4x_2E0 u) (V5y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (_let_1 V5y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27a))) (let ((_let_6 (app_2E2 ((s (_let_4 _let_5)) V0f_2E0)))) (let ((_let_7 (s _let_5))) (= (_let_1 ((app_2E2 (_let_7 (_let_6 _let_2))) _let_3)) (_let_1 ((app_2E2 (_let_7 (_let_6 _let_3))) _let_2))))))))))) (forall ((V6x_2E0 u) (V7y_2E0 u) (V8z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V8z_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 (app_2E2 ((s (_let_3 _let_4)) V0f_2E0)))) (let ((_let_6 (s _let_4))) (let ((_let_7 (app_2E2 (_let_6 (_let_5 (_let_1 V6x_2E0)))))) (let ((_let_8 (app_2E2 (_let_6 (_let_5 (_let_1 V7y_2E0)))))) (= (_let_1 (_let_7 (_let_1 (_let_8 _let_2)))) (_let_1 (_let_8 (_let_1 (_let_7 _let_2))))))))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0g_2E0 u) (V1f_2E0 u) (V2Q_2E0 u) (V3P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2Q_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (let ((_let_4 (_let_1 V3P_2E0))) (=> (= _let_4 _let_2) (=> (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V2Q_2E0)))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0g_2E0)) _let_1))))))))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) (_let_1 V1f_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2ERES__EXISTS_2E2 _let_2) (_let_1 V0g_2E0)))))))))))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0Q_2E0)) _let_1)))))))) (=> (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s A_27a) V4x_2E0)))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) Bool)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27a)))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Elist_2EZIP_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2Elist_2EZIP_2E0)) _let_3))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27a) V1x_2E0)))) mono_2Ec_2Ebool_2EF)) (forall ((V0P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V0P_2E0)) (_let_1 F0_2E0)))) mono_2Ec_2Ebool_2EF))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27b) X1_2E0))) (let ((_let_2 ((s A_27a) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) _let_3))) (let ((_let_5 (s _let_3))) (= (_let_5 ((c_2Epair_2E_2C_2E2 _let_2) _let_1)) (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Epair_2E_2C_2E0)) _let_2))) _let_1))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (and (= (and V1Q (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V4x_2E0)))))) (forall ((V5x_2E0 u)) (and V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V5x_2E0))))))) (= (forall ((V7x_2E0 u)) (and V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V7x_2E0)))))) (and (forall ((V6x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V6x_2E0))))) V1Q)) (= (forall ((V3x_2E0 u)) (=> V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))))) (=> V1Q (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))))))) (forall ((A_27a d) (A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Esum_2Esum A_27a) A_27b)) (tyop_2Elist_2Elist tyop_2Emin_2Ebool))))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (= (and V1t2 V0t1) (and V0t1 V1t2))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2ESOME_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2ESOME_2E0)) _let_2)))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (= (or (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0))))) (exists ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V4x_2E0)))))) (exists ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (forall ((V2x_2E0 u)) (=> V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))) (=> V0P (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))))) (forall ((A_27a d) (V0P Bool) (V1Q Bool)) (= (or (forall ((V4x_2E0 u)) V1Q) (forall ((V3x_2E0 u)) V0P)) (forall ((V2x_2E0 u)) (or V0P V1Q)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s A_27a) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_1 _let_6)) c_2Epred__set_2EINSERT_2E0)) _let_5))) _let_4)))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> (and V1t2 V0t1) V1t2)) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (A_27b d) (V0b Bool) (V1f_2E0 u) (V2g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V2g_2E0))) (let ((_let_4 (_let_2 V1f_2E0))) (let ((_let_5 (c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b))))) (let ((_let_6 (s A_27b))) (= (_let_6 ((_let_5 (_let_6 ((app_2E2 _let_4) _let_1))) (_let_6 ((app_2E2 _let_3) _let_1)))) (_let_6 ((app_2E2 (_let_2 ((_let_5 _let_4) _let_3))) _let_1)))))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 Bool)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 tyop_2Enum_2Enum))) (let ((_let_4 (_let_2 (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29 V1))))))))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) (= ((mono_2Ec_2Elist_2EEL_2Emono_2Etyop_2Enum_2Enum V0m) (mono_2Ec_2Erich__list_2ECOUNT__LIST V1n)) V0m))) (forall ((V0z Bool) (V1y Bool) (V2x Bool) (V3w Bool)) (=> (and (=> V0z V3w) (=> V2x V1y)) (=> (or V0z V2x) (or V3w V1y)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun _let_1))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2Esorting_2EPERM_2E1 _let_2)) (_let_5 ((app_2E2 ((s (_let_3 _let_4)) c_2Esorting_2EPERM_2E0)) _let_2))))))))) (forall ((A_27a d) (A_27b d) (V0m_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (_let_2 V0m_2E0))) (= (_let_2 ((c_2Ebool_2ERES__ABSTRACT_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) c_2Epred__set_2EUNIV_2E0)) _let_3)) _let_3))))) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((A_27a d) (A_27b d) (V0b_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0b_2E0))) (= (_let_1 ((c_2Ebool_2Eitself__case_2E2 ((s (tyop_2Ebool_2Eitself A_27a)) c_2Ebool_2Ethe__value_2E0)) _let_2)) _let_2)))) (forall ((V0t Bool)) (or (not V0t) V0t)) (forall ((A_27a d) (V0b Bool) (V1t_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b))) _let_2) _let_2)) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2l_2E0 u)) (= (exists ((V3l1_2E0 u) (V4l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l1_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_1 V4l2_2E0))) (and (= (_let_1 V2l_2E0) (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_2) _let_4))) ((mono_2Ec_2Earithmetic_2E_3C_3D V1m) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_4)))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) V0n))))))) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2B V0n) V1m)) (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V2l_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (V0l2_2E0 u) (V1l1_2E0 u) (V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V0l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V2x_2E0))) (let ((_let_6 (_let_1 V3y_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_5) _let_6))) _let_3))) (_let_1 ((c_2Elist_2EAPPEND_2E2 (_let_1 ((c_2Elist_2EAPPEND_2E2 _let_6) _let_5))) _let_2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27c))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27d))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27c) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0t0 mono_2Etyop_2Enum_2Enum) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (= (exists ((V2J (-> mono_2Etyop_2Enum_2Enum Bool))) (and (V2J V0t0) (forall ((V3t mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2B V3t))) (let ((_let_2 (_let_1 V0t0))) (=> (V2J _let_2) (and (V1a _let_2) (V2J (_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0t0) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))))))))))) ((mono_2Ec_2ETemporal__Logic_2EALWAYS V1a) V0t0))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Ebool_2Ethe__value_2E0)))) (forall ((V1i_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1i_2E0))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((tyop_2Emin_2Efun (_let_1 _let_2)) _let_2))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_4 _let_2)))) (let ((_let_6 (s _let_5))) (= (_let_6 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 V0))) ((s _let_3) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V1)))))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Erelation_2Eequivalence_2E1 (_let_2 (c_2Erelation_2EEQC_2E1 (_let_2 V0R_2E0))))))))) (forall ((V0 Bool) (V1 Bool) (V2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V2))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V3x_2E0 u) (V2a_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2a_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F1_2E0)) _let_3))) _let_2))) (= _let_3 _let_2)))))))) (=> (forall ((V2a_2E0 u) (V1t_2E0 u) (V0u_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V0u_2E0))) (let ((_let_3 (_let_1 V1t_2E0))) (let ((_let_4 (s A_27a))) (let ((_let_5 (_let_4 V2a_2E0))) (let ((_let_6 (_let_4 V3x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun A_27a))) (let ((_let_8 (_let_7 tyop_2Emin_2Ebool))) (let ((_let_9 (_let_7 A_27b))) (let ((_let_10 (tyop_2Emin_2Efun A_27b))) (let ((_let_11 (_let_10 _let_9))) (let ((_let_12 (_let_10 _let_11))) (= (_let_1 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s (_let_7 _let_12)) F0_2E0)) _let_5))) _let_3))) _let_2))) _let_6)) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F1_2E0)) _let_6))) _let_5))) _let_3) _let_2)))))))))))))))) (forall ((V0u_2E0 u) (V1t_2E0 u) (V2a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V1t_2E0))) (let ((_let_3 ((s A_27a) V2a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 A_27b))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (_let_6 _let_7))) (= (_let_1 ((c_2Ebool_2Eliteral__case_2E2 ((s _let_5) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_4 _let_8)) F0_2E0)) _let_3))) _let_2))) (_let_1 V0u_2E0)))) _let_3)) _let_2))))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1rep_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1rep_2E0)))) (and (forall ((V4x_2E0 u)) (= (exists ((V5x_27_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V4x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1rep_2E0)) ((s A_27b) V5x_27_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V4x_2E0)))))) (forall ((V2x_27_2E0 u) (V3x_27_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_27_27_2E0))) (let ((_let_3 (_let_1 V2x_27_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1rep_2E0)))) (let ((_let_5 (s A_27a))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongOrder_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etrichotomous_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2EStrongLinearOrder_2E1 _let_2)))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2))) (= _let_3 _let_2)))))) (forall ((V0b Bool) (V1t1 Bool) (V2t2 Bool)) (= (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0b) V1t1) V2t2) (and (or (not V0b) V1t1) (or V0b V2t2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Ebool_2Eliteral__case_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2Eliteral__case_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 (tyop_2Eoption_2Eoption _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Eoption_2EOPTION__MAP_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_6))) _let_4))))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> (and V1t2 V0t1) V0t1)) (forall ((A_27a d) (V0P_2E0 u) (V1l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1l_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEXISTS_2E2 (_let_2 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2E_7E))) _let_3))) _let_1))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Elist_2EEVERY_2E2 _let_3) _let_1)))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (= (= V0t1 V1t2) (and (=> V1t2 V0t1) (=> V0t1 V1t2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Estring_2Echar)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Estring_2Echar_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) A_27a)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (s (_let_2 A_27a)))) (let ((_let_4 ((tyop_2Epair_2Eprod A_27a) A_27b))) (= (_let_3 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_4) A_27a)) c_2Epair_2EFST_2E0)) ((s (_let_2 _let_4)) (c_2Estate__transformer_2EUNIT_2E1 _let_1)))) (_let_3 (c_2Ecombin_2EK_2E1 _let_1)))))))) (forall ((A_27a d) (V0R_2E0 u) (V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (s tyop_2Enum_2Enum))) (=> ((mono_2Ec_2Eprim__rec_2E_3C (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_3)))) (j_mono_2Etyop_2Enum_2Enum (_let_5 (c_2Elist_2ELENGTH_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Elist_2ESHORTLEX_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) _let_2)))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (exists ((V3x_2E0 u)) (or V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))))) (or (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))) V1Q))) (forall ((V0 (-> (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind) Bool)) (V1 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V1)))))))) (forall ((V0 mono_2Etyop_2Enum_2Enum)) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V0))) V0)) (forall ((A_27a d) (V0t Bool)) (= V0t (forall ((V1x_2E0 u)) V0t))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (=> (forall ((V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (= _let_2 (_let_1 V1x_2E0)))))) (= (_let_1 (c_2Emin_2E_40_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (_let_1 V1x_2E0))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod ((tyop_2Epair_2Eprod A_27a) A_27b)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27b) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F3_2E0 u) (F1_2E0 u) (F2_2E0 u) (F0_2E0 u)) (=> (forall ((V8x_2E0 u) (V9r_2E0 u)) (let ((_let_1 ((s A_27b) V8x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V9r_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_3))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F3_2E0)) _let_1))) _let_5)) (_let_6 ((app_2E2 _let_5) _let_1))))))))))) (=> (forall ((V5rows_2E0 u) (V8x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 (tyop_2Elist_2Elist _let_3))) (let ((_let_5 ((s _let_4) V5rows_2E0))) (let ((_let_6 ((s A_27b) V8x_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_1 A_27c))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_9)) F1_2E0)) _let_5))) _let_6)) (_let_8 ((c_2EpatternMatches_2EPMATCH_2E2 _let_6) ((s (tyop_2Elist_2Elist _let_2)) ((c_2Elist_2EMAP_2E2 ((s _let_7) ((app_2E2 ((s (_let_1 _let_7)) F3_2E0)) _let_6))) _let_5))))))))))))))) (=> (forall ((V1p_2E0 u) (V2g_2E0 u) (V10r_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 ((s _let_3) V10r_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V2g_2E0))) (let ((_let_7 (_let_2 A_27a))) (let ((_let_8 ((s _let_7) V1p_2E0))) (let ((_let_9 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_10 (s _let_9))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_9))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F2_2E0)) _let_8))) _let_6))) _let_4)) (_let_10 (((c_2EpatternMatches_2EPMATCH__FLATTEN__FUN_2E3 _let_8) _let_6) _let_4)))))))))))))))) (=> (forall ((V6x_2E0 u) (V7r_2E0 u)) (let ((_let_1 ((s A_27b) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_4 (_let_2 _let_3))) (let ((_let_5 ((s _let_4) V7r_2E0))) (let ((_let_6 (s _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_4) _let_3))) (= (_let_6 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_2 _let_7)) F0_2E0)) _let_1))) _let_5)) (_let_6 ((app_2E2 _let_5) _let_1))))))))))) (forall ((V0v_2E0 u) (V1p_2E0 u) (V2g_2E0 u) (V3rows1_2E0 u) (V4rows2_2E0 u) (V5rows_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27c))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) _let_1))) (let ((_let_3 (s (tyop_2Elist_2Elist _let_2)))) (let ((_let_4 (_let_3 V4rows2_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 (_let_5 _let_1)))) (let ((_let_7 (tyop_2Elist_2Elist _let_6))) (let ((_let_8 ((s _let_7) V5rows_2E0))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 ((s _let_9) V2g_2E0))) (let ((_let_11 (_let_5 A_27a))) (let ((_let_12 ((s _let_11) V1p_2E0))) (let ((_let_13 ((tyop_2Emin_2Efun _let_6) _let_2))) (let ((_let_14 ((tyop_2Emin_2Efun _let_9) _let_13))) (let ((_let_15 (c_2Elist_2EAPPEND_2E2 (_let_3 V3rows1_2E0)))) (let ((_let_16 (c_2EpatternMatches_2EPMATCH_2E2 ((s A_27a) V0v_2E0)))) (let ((_let_17 (s A_27c))) (let ((_let_18 (_let_5 A_27c))) (=> (forall ((V6x_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 (tyop_2Eoption_2Eoption A_27c)))) (let ((_let_3 (_let_1 _let_2))) (let ((_let_4 ((s A_27b) V6x_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2EpatternMatches_2EPMATCH__IS__EXHAUSTIVE_2E2 _let_4) ((s (tyop_2Elist_2Elist _let_2)) ((c_2Elist_2EMAP_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) F0_2E0)) _let_4))) ((s (tyop_2Elist_2Elist _let_3)) V5rows_2E0)))))))))))) (= (_let_17 (_let_16 (_let_3 (_let_15 (_let_3 ((c_2Elist_2ECONS_2E2 ((s _let_2) (((c_2EpatternMatches_2EPMATCH__ROW_2E3 _let_12) _let_10) ((s _let_18) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_18)) F1_2E0)) _let_8))))) _let_4)))))) (_let_17 (_let_16 (_let_3 ((c_2Elist_2EAPPEND_2E2 (_let_3 (_let_15 (_let_3 ((c_2Elist_2EMAP_2E2 ((s _let_13) ((app_2E2 ((s _let_14) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_11) _let_14)) F2_2E0)) _let_12))) _let_10))) _let_8))))) _let_4)))))))))))))))))))))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 _let_2))) _let_2)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Epair_2EABS__prod_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Epair_2EABS__prod_2E0)) _let_2)))))))) (forall ((V0bool (-> Bool Bool Bool))) (= (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool ((V0bool mono_2Ec_2Ebool_2ET) mono_2Ec_2Ebool_2EF)) mono_2Ec_2Ebool_2ET)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__FORALL_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (exists ((V2x_2E0 u)) (=> V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))) (=> V0P (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Elist_2ELENGTH_2Emono_2Etyop_2Estring_2Echar V0))) (_let_1 (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist tyop_2Estring_2Echar)) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EONE__ONE_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0)))) (forall ((V1x1_2E0 u) (V2x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x2_2E0))) (let ((_let_3 (_let_1 V1x1_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1)))))))) (and (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0))))) (forall ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V4x_2E0)))))))) (forall ((A_27a d) (A_27b d) (V0l_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist ((tyop_2Epair_2Eprod A_27a) A_27b))) V0l_2E0))) (let ((_let_2 (tyop_2Elist_2Elist A_27a))) (let ((_let_3 (s _let_2))) (= (_let_3 (c_2Erich__list_2EUNZIP__FST_2E1 _let_1)) (_let_3 (c_2Epair_2EFST_2E1 ((s ((tyop_2Epair_2Eprod _let_2) (tyop_2Elist_2Elist A_27b))) (c_2Elist_2EUNZIP_2E1 _let_1))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2EONTO_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2EONTO_2E0)) _let_2)))))))) (forall ((V0x Bool) (V1x_27 Bool) (V2y Bool) (V3y_27 Bool)) (=> (and (=> V1x_27 (= V2y V3y_27)) (= V0x V1x_27)) (= (=> V1x_27 V3y_27) (=> V0x V2y)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) _let_2))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X0_2E0))) (let ((_let_6 (s _let_2))) (= (_let_6 ((c_2Ebool_2ELET_2E2 _let_5) _let_1)) (_let_6 ((app_2E2 (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_3)) c_2Ebool_2ELET_2E0)) _let_5))) _let_1)))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool) (V1 mono_2Etyop_2Enum_2Enum) (V2 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum V0) V1) V2))) (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V2))))))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (or (and V0A V2C) (and V1B V0A)) (and V0A (or V1B V2C)))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2ll_2E0 u)) (let ((_let_1 ((s (tyop_2Ellist_2Ellist A_27c)) V2ll_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 A_27a)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_5 (s (tyop_2Ellist_2Ellist A_27b)))) (= (_let_5 ((c_2Ellist_2ELMAP_2E2 _let_4) ((s (tyop_2Ellist_2Ellist A_27a)) ((c_2Ellist_2ELMAP_2E2 _let_3) _let_1)))) (_let_5 ((c_2Ellist_2ELMAP_2E2 ((s (_let_2 A_27b)) ((c_2Ecombin_2Eo_2E2 _let_4) _let_3))) _let_1))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (forall ((V2x_2E0 u)) (or (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))) V0P)) (or V0P (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))))) (forall ((A_27a d) (V0l_2E0 u) (V1n mono_2Etyop_2Enum_2Enum)) (= (exists ((V2h_2E0 u) (V3l_27_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V3l_27_2E0))) (and (= (_let_1 V0l_2E0) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) V2h_2E0)) _let_2))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 _let_2))) V1n))))) (= (j_mono_2Etyop_2Enum_2Enum ((s tyop_2Enum_2Enum) (c_2Elist_2ELENGTH_2E1 ((s (tyop_2Elist_2Elist A_27a)) V0l_2E0)))) (mono_2Ec_2Enum_2ESUC V1n)))) (forall ((V0t Bool)) (=> mono_2Ec_2Ebool_2EF V0t)) (forall ((A_27b d) (X0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27b))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (_let_4 tyop_2Emin_2Ebool)))) (let ((_let_6 ((s _let_5) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29 X0)))) (let ((_let_7 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (let ((_let_9 (s _let_7))) (= (_let_9 ((c_2Erelation_2Einv__image_2E2 _let_6) _let_3)) (_let_9 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_8)) c_2Erelation_2Einv__image_2E0)) _let_6))) _let_3))))))))))))) (forall ((A_27a d) (V0P Bool) (V1Q_2E0 u)) (= (forall ((V3x_2E0 u)) (and V0P (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V3x_2E0)))))) (and V0P (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1Q_2E0)) ((s A_27a) V2x_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2 Bool) (X3 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (tyop_2Elist_2Elist (_let_1 (tyop_2Eoption_2Eoption A_27b))))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) _let_5))) (let ((_let_7 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_5) _let_6)))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 ((s _let_6) ((((c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E4 _let_4) _let_3) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X2))) ((s _let_5) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 X3))))) (((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_1 _let_8)) c_2EpatternMatches_2ESTRONGEST__REDUNDANT__ROWS__INFO__AUX_2E0)) _let_4))) _let_3))) X2) X3))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u)) (= (forall ((V1x1_2E0 u) (V2x2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x2_2E0))) (let ((_let_3 (_let_1 V1x1_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))) (let ((_let_5 (s A_27b))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EONE__ONE_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s (tyop_2Eind__type_2Erecspace A_27a)))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_1 V0x_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Eind__type_2Edest__rec_2E1 _let_4)) (_let_3 (c_2Eind__type_2Edest__rec_2E1 _let_2))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (= (exists ((V1x_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1x_2E0)))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Ebool_2Ethe__value_2E0))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1i mono_2Etyop_2Enum_2Enum) (V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Enum_2ESUC V2n)))) (= (= (_let_1 V0m) (_let_1 V1i)) (= V0m V1i)))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__MAP_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0R_2E0 u) (V1ls_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2ESORTED_2E2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0)) ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0)))) (forall ((V2n mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27a)) V1ls_2E0))) (let ((_let_2 (mono_2Ec_2Enum_2ESUC V2n))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (s A_27a))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (=> ((mono_2Ec_2Eprim__rec_2E_3C _let_2) (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) V0R_2E0)) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V2n))) _let_1))))) (_let_4 ((c_2Elist_2EEL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum _let_2))) _let_1)))))))))))))))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (or V0A V1B V2C) (or V0A V2C V1B))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (and (or V0A V1B) (or V0A V2C)) (or V0A (and V2C V1B)))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2EONE__ONE_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2EONE__ONE_2E0)) _let_2)))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V1b2_2E0))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_3) _let_1))))) (let ((_let_6 (_let_2 V0b1_2E0))) (let ((_let_7 (j_mono_2Etyop_2Enum_2Enum (_let_4 ((app_2E2 _let_6) _let_1))))) (= (j_mono_2Etyop_2Enum_2Enum (_let_4 (((c_2Ebag_2EBAG__INTER_2E3 _let_6) _let_3) _let_1))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C _let_7) _let_5)) _let_7) _let_5)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0A Bool) (V1B Bool)) (= (and (not V1B) V0A) (not (=> V0A V1B)))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0))) (_let_1 (c_2Ebool_2EONE__ONE_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2z_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2z_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (_let_1 V1y_2E0))) (=> (and (= _let_3 _let_4) (= _let_4 _let_2)) (= _let_3 _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s ((tyop_2Emin_2Efun (_let_1 (_let_1 tyop_2Enum_2Enum))) (_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Enum_2Enum)) tyop_2Enum_2Enum)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_4))) _let_2))))))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1)))))))) (forall ((A_27a d) (A_27b d) (V0t1_2E0 u) (V1t2_2E0 u)) (let ((_let_1 ((s A_27a) V0t1_2E0))) (= _let_1 _let_1))) (forall ((A_27a d) (A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V0x_2E0)) (_let_1 V1x_27_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V0x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1x_27_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0b Bool) (V1t_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1t_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b))) _let_2) _let_2)) _let_2)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 _let_1) ((s A_27a) (c_2Emin_2E_40_2E1 _let_1))))))))) (forall ((V0 (-> (-> Bool Bool) Bool)) (V1 (-> Bool Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V1)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (_let_3 V0P_2E0))) (let ((_let_6 (tyop_2Emin_2Efun _let_2))) (let ((_let_7 (_let_6 _let_2))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_5) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 _let_4) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) F0_2E0)) _let_5))) _let_4))) _let_1))))))))))))) (=> (forall ((V1Q_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1Q_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F2_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (=> (forall ((V0P_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F1_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (let ((_let_4 (tyop_2Emin_2Efun _let_1))) (let ((_let_5 (_let_4 _let_1))) (let ((_let_6 (s _let_5))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 V1Q_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 (_let_6 ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_8))))) (or (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 (_let_6 F2_2E0)) _let_8))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 (_let_6 F1_2E0)) _let_3)))))))))))))))))))) (forall ((V0 (-> (-> Bool Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0t1_2E0 u) (V1t2_2E0 u)) (exists ((V2fn_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (let ((_let_3 (app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) A_27a)) V2fn_2E0)))) (and (= (_let_1 (_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET)))) (_let_1 V0t1_2E0)) (= (_let_1 (_let_3 (_let_2 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF)))) (_let_1 V1t2_2E0)))))))) (forall ((A_27a d) (V0a1_2E0 u) (V1a2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a2_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))))) (let ((_let_4 (_let_1 V0a1_2E0))) (= (= _let_4 _let_2) (= (_let_3 (c_2Eind__type_2EINJA_2E1 _let_4)) (_let_3 (c_2Eind__type_2EINJA_2E1 _let_2))))))))) (forall ((V0z Bool) (V1y Bool) (V2x Bool) (V3w Bool)) (=> (and (=> V0z V3w) (=> V1y V2x)) (=> (=> V2x V0z) (=> V1y V3w)))) (forall ((V0y Bool) (V1x Bool)) (=> (=> V0y V1x) (=> (not V1x) (not V0y)))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((A_27a d) (V0b_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V0b_2E0))) (= (= (_let_2 (c_2Ebag_2EBAG__OF__SET_2E1 ((s (_let_1 tyop_2Emin_2Ebool)) (c_2Ebag_2ESET__OF__BAG_2E1 _let_3)))) _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebag_2EBAG__ALL__DISTINCT_2E1 _let_3)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (exists ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0)))))) (exists ((V3y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V4x_2E0)))) ((s A_27b) V3y_2E0)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Enum_2Enum))))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Enum_2Enum_29_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0f_2E0 u) (V1v_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1v_2E0)))) (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (=> (= _let_2 (_let_1 V1v_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) _let_2))))))))) (forall ((A_27state d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27state) ((tyop_2Epair_2Eprod tyop_2Eone_2Eone) A_27state)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u) (V2s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V2s_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (c_2Epred__set_2EINSERT_2E2 (_let_3 V0x_2E0)))) (let ((_let_5 (c_2Epred__set_2EINSERT_2E2 (_let_3 V1y_2E0)))) (= (_let_1 (_let_4 (_let_1 (_let_5 _let_2)))) (_let_1 (_let_5 (_let_1 (_let_4 _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1x_27_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 _let_2) _let_1)))))))) (forall ((A_27a d) (V0r_2E0 u) (V1r_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_27_2E0))) (let ((_let_3 (_let_1 V0r_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epred__set_2EDISJOINT_2E2 (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 (c_2Eset__relation_2Edomain_2E1 _let_3))) (_let_5 (c_2Eset__relation_2Erange_2E1 _let_3))))) (_let_5 ((c_2Epred__set_2EUNION_2E2 (_let_5 (c_2Eset__relation_2Edomain_2E1 _let_2))) (_let_5 (c_2Eset__relation_2Erange_2E1 _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Eset__relation_2Eacyclic_2E1 (_let_1 ((c_2Epred__set_2EUNION_2E2 _let_3) _let_2)))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (= (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V1x_2E0)))) ((s A_27b) V2y_2E0)))))) (forall ((V3y_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_1) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) V0P_2E0)) ((s A_27a) V4x_2E0)))) ((s A_27b) V3y_2E0)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_2))) _let_3))) (= _let_3 _let_2)))))))) (forall ((V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (= (_let_1 (c_2Emin_2E_40_2E1 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_2)))) _let_2)))))))) (forall ((A_27a d) (A_27b d) (F3_2E0 u) (F0_2E0 u) (F2_2E0 u) (F1_2E0 u)) (=> (forall ((V2R_2E0 u) (V3i_2E0 u) (V4j_2E0 u)) (let ((_let_1 ((s A_27b) V4j_2E0))) (let ((_let_2 ((s A_27a) V3i_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (s _let_3))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_4)) F3_2E0)) _let_6))) _let_2))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 (_let_7 ((app_2E2 _let_6) _let_2))) _let_1))))))))))))) (=> (forall ((V1Q_2E0 u) (V2R_2E0 u) (V3i_2E0 u)) (let ((_let_1 ((s A_27a) V3i_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 _let_2))) (let ((_let_5 (s _let_4))) (let ((_let_6 (_let_5 V2R_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_4))) (let ((_let_8 (s _let_2))) (let ((_let_9 (_let_8 V1Q_2E0))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_12 (_let_7 _let_11))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_12)) F0_2E0)) _let_9))) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((c_2Ebool_2ERES__EXISTS_2E2 _let_9) (_let_8 ((app_2E2 (_let_5 ((app_2E2 ((s (_let_7 _let_4)) F3_2E0)) _let_6))) _let_1))))))))))))))))))) (=> (forall ((V2R_2E0 u) (V5j_2E0 u) (V6i_2E0 u)) (let ((_let_1 ((s A_27b) V5j_2E0))) (let ((_let_2 ((s A_27a) V6i_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27b))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 _let_4))) (let ((_let_7 ((s _let_6) V2R_2E0))) (let ((_let_8 (s tyop_2Emin_2Ebool))) (let ((_let_9 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_3 _let_9))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F2_2E0)) _let_7))) _let_1))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_8 ((app_2E2 ((s _let_4) ((app_2E2 _let_7) _let_2))) _let_1))))))))))))))) (=> (forall ((V0P_2E0 u) (V2R_2E0 u) (V5j_2E0 u)) (let ((_let_1 ((s A_27b) V5j_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 _let_3))) (let ((_let_6 ((s _let_5) V2R_2E0))) (let ((_let_7 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 _let_7))) (let ((_let_9 (tyop_2Emin_2Efun _let_5))) (let ((_let_10 (s _let_7))) (let ((_let_11 (_let_10 V0P_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_9 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((app_2E2 ((s _let_3) ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_13)) F1_2E0)) _let_11))) _let_6))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__EXISTS_2E2 _let_11) (_let_10 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_9 _let_8)) F2_2E0)) _let_6))) _let_1)))))))))))))))))))) (forall ((V0P_2E0 u) (V1Q_2E0 u) (V2R_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 _let_1))) (let ((_let_4 ((s _let_3) V2R_2E0))) (let ((_let_5 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V0P_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_3))) (let ((_let_9 (_let_8 _let_1))) (let ((_let_10 (s _let_1))) (let ((_let_11 (_let_10 V1Q_2E0))) (let ((_let_12 (s tyop_2Emin_2Ebool))) (let ((_let_13 (_let_8 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__EXISTS_2E2 _let_7) (_let_6 ((app_2E2 ((s _let_13) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_13)) F0_2E0)) _let_11))) _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_12 ((c_2Ebool_2ERES__EXISTS_2E2 _let_11) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_7))) _let_4))))))))))))))))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Epred__set_2Ecountable_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Epred__set_2Ecountable_2E0)) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0)))) (forall ((V0P (-> Bool Bool))) (=> (and (V0P mono_2Ec_2Ebool_2ET) (V0P mono_2Ec_2Ebool_2EF)) (forall ((V1b Bool)) (V0P V1b)))) (forall ((A_27a d) (V0xs_2E0 u) (V1xss_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1xss_2E0))) (let ((_let_3 (s _let_1))) (let ((_let_4 (_let_3 V0xs_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2ESUBSET_2E2 (_let_3 (c_2Epred__set_2EBIGUNION_2E1 _let_2))) _let_4))) (not (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 (_let_3 c_2Epred__set_2EEMPTY_2E0)) _let_2)))) (forall ((V2xs1_2E0 u) (V3xs2_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V3xs2_2E0))) (let ((_let_4 (_let_2 V2xs1_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V1xss_2E0))) (=> (and (not (= _let_4 _let_3)) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_3) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_4) _let_6)))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3)))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Eset__relation_2Eper_2E2 _let_4) _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2EDATATYPE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Ebool_2EDATATYPE_2E0)) _let_1))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1t mono_2Etyop_2Enum_2Enum)) (= (F0 V1t) mono_2Ec_2Ebool_2EF)) (=> (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V2t mono_2Etyop_2Enum_2Enum)) (= ((F1 V0b) V2t) (not (V0b V2t)))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool))) (= (mono_2Ec_2ETemporal__Logic_2EALWAYS V0b) ((mono_2Ec_2ETemporal__Logic_2EBEFORE F0) (F1 V0b))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1)))))))))) (forall ((A_27a d) (V0R_2E0 u) (V1L_2E0 u) (V2x_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1L_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (let ((_let_6 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 (_let_1 ((c_2Esorting_2EQSORT3_2E2 ((s (_let_3 _let_4)) V0R_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (_let_6 (_let_5 (c_2Elist_2ELIST__TO__SET_2E1 _let_2)))))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum)) (= (= ((mono_2Ec_2Earithmetic_2EMOD V0x) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) mono_2Ec_2Enum_2E0) (mono_2Ec_2Earithmetic_2EEVEN V0x))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0R_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2ESN_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2EWF_2E1 (_let_2 (c_2Erelation_2Einv_2E1 _let_3))))))))))) (forall ((A_27a d) (V0P_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) c_2Ebool_2Ethe__value_2E0)))) (forall ((V1x_2E0 u)) (let ((_let_1 (tyop_2Ebool_2Eitself A_27a))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0P_2E0)) ((s _let_1) V1x_2E0))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1N_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1N_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (s A_27c))) (let ((_let_8 (_let_2 A_27c))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_6))) _let_4))) _let_1)) (_let_7 ((app_2E2 _let_6) ((s A_27b) ((app_2E2 _let_4) _let_1))))))))))))))) (=> (forall ((V1N_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1N_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0P_2E0 u) (V1N_2E0 u) (V2M_2E0 u)) (let ((_let_1 ((s A_27a) V2M_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1N_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 (_let_2 A_27c))) (let ((_let_9 (tyop_2Emin_2Efun _let_3))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (s A_27c))) (= (_let_11 ((app_2E2 _let_7) ((s A_27b) ((c_2Ebool_2Eliteral__case_2E2 (_let_4 ((app_2E2 ((s (_let_9 _let_3)) F0_2E0)) _let_5))) _let_1)))) (_let_11 ((c_2Ebool_2Eliteral__case_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_5))) _let_1)))))))))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (exists ((V2x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))) V1Q)) (=> (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0))))) V1Q))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (= (_let_1 (c_2Emin_2E_40_2E1 ((s _let_4) ((app_2E2 ((s (_let_3 _let_4)) F0_2E0)) _let_2)))) _let_2)))))))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t1 Bool) (V1t2 Bool)) (= (or (and (not V0t1) (not V1t2)) (and V1t2 V0t1)) (= V0t1 V1t2))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (and (forall ((V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (= _let_3 _let_2)))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_2E1 _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2E_3F_21_2E1 _let_1))))))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0s_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 (_let_1 (c_2Eset__relation_2Erange_2E1 (_let_3 ((c_2Eset__relation_2Errestrict_2E2 (_let_3 V1r_2E0)) _let_2))))) _let_2))))))) (forall ((F0 (-> mono_2Etyop_2Enum_2Enum Bool)) (F1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (forall ((V0n mono_2Etyop_2Enum_2Enum)) (= (F0 V0n) (= V0n mono_2Ec_2Enum_2E0))) (=> (forall ((V1m mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum) (V3d mono_2Etyop_2Enum_2Enum)) (= (((F1 V1m) V2a) V3d) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum ((mono_2Ec_2Eprim__rec_2E_3C V1m) V3d)) V2a) (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V2a)) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1m) V3d)))))) (forall ((V0n mono_2Etyop_2Enum_2Enum) (V1m mono_2Etyop_2Enum_2Enum) (V2a mono_2Etyop_2Enum_2Enum)) (= (mono_2Ec_2Earithmetic_2Efindq ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V2a) ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V1m) V0n))) (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Enum_2Enum (F0 V0n)) V2a) ((mono_2Ec_2Ebool_2ELET_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum ((F1 V1m) V2a)) ((mono_2Ec_2Earithmetic_2E_2A (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO))) V0n)))))))) (forall ((A_27a d) (V0P Bool) (V1Q Bool)) (= (=> (exists ((V3x_2E0 u)) V0P) (forall ((V4x_2E0 u)) V1Q)) (forall ((V2x_2E0 u)) (=> V0P V1Q)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Emin_2E_3D_2E1 _let_1)) (_let_4 ((app_2E2 ((s (_let_2 _let_3)) c_2Emin_2E_3D_2E0)) _let_1)))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u)) (=> (exists ((V1rep_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1rep_2E0))))) (exists ((V2rep_2E0 u) (V3abs_2E0 u)) (and (forall ((V5r_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5r_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s (_let_3 tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) ((s A_27b) ((app_2E2 ((s (_let_3 A_27b)) V3abs_2E0)) _let_2)))) _let_2)))))) (forall ((V4a_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V4a_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V3abs_2E0)) ((s A_27a) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V2rep_2E0)) _let_2)))) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 (V0 V1))) (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 V1)))))))) (= (_let_24 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool)) (_let_24 c_2Ebool_2ECOND_2E0)) (forall ((V0P (-> Bool Bool))) (= (and (V0P mono_2Ec_2Ebool_2ET) (V0P mono_2Ec_2Ebool_2EF)) (forall ((V1b Bool)) (V0P V1b)))) (forall ((A_27a d) (V0p_2E0 u) (V1d_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 ((s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1)))) V1d_2E0))) (let ((_let_4 (tyop_2Elist_2Elist A_27a))) (let ((_let_5 (tyop_2Emin_2Efun _let_4))) (let ((_let_6 ((s (_let_5 tyop_2Emin_2Ebool)) V0p_2E0))) (let ((_let_7 (s (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_4) _let_1)))))) (= (_let_7 ((c_2EDecode_2Edecode__list_2E2 _let_6) _let_3)) (_let_7 ((c_2EDecode_2Eenc2dec_2E2 _let_6) ((s (_let_5 _let_1)) (c_2EEncode_2Eencode__list_2E1 ((s ((tyop_2Emin_2Efun A_27a) _let_1)) (c_2EDecode_2Edec2enc_2E1 _let_3))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x Bool) (V1x_27_2E0 u) (V2x_27_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (_let_1 V2x_27_27_2E0))) (let ((_let_4 (_let_1 V1x_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun A_27a))) (let ((_let_7 (_let_6 tyop_2Emin_2Ebool))) (let ((_let_8 (_let_6 _let_7))) (let ((_let_9 (_let_6 _let_8))) (= (and (=> (= V0x mono_2Ec_2Ebool_2ET) (= _let_2 _let_4)) (=> (= V0x mono_2Ec_2Ebool_2EF) (= _let_2 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_9)) F0_2E0)) (_let_5 (i_mono_2Etyop_2Emin_2Ebool V0x))))) _let_4))) _let_3))) _let_2)))))))))))))) (forall ((V0x Bool) (V1x_27_2E0 u) (V2x_27_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_27_27_2E0))) (let ((_let_3 (_let_1 V1x_27_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0x)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (_let_5 _let_6))) (let ((_let_8 (_let_5 _let_7))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 (c_2Emin_2E_40_2E1 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) F0_2E0)) _let_4))) _let_3))) _let_2)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS__UNIQUE_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0b Bool) (V1t1 Bool) (V2t2 Bool)) (= (((mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V0b) V1t1) V2t2) (and (=> V0b V1t1) (=> (not V0b) V2t2)))) (forall ((V0x Bool)) (= (=> V0x mono_2Ec_2Ebool_2EF) (not V0x))) (= (_let_11 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2EONTO_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind)) (_let_11 c_2Ebool_2EONTO_2E0)) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s A_27a))) (= (_let_3 (c_2Emin_2E_40_2E1 _let_2)) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Emin_2E_40_2E0)) _let_2))))))) (forall ((V0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Estring_2Echar))) (let ((_let_2 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun _let_1) _let_1)) _let_1)))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Estring_2Echar_29_29 _let_3))) _let_3))))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 ((mono_2Ec_2ETemporal__Logic_2EUNTIL V1a) V0b))) (= _let_1 ((mono_2Ec_2ETemporal__Logic_2EUNTIL _let_1) V0b)))) (forall ((A_27a d) (V0t Bool)) (= (exists ((V1x_2E0 u)) V0t) V0t)) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Estring_2Echar) ((tyop_2Emin_2Efun (tyop_2Elist_2Elist tyop_2Estring_2Echar)) tyop_2Emin_2Ebool))) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Esorting_2EPERM_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Esorting_2EPERM_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (V0R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) V0R_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etotal_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Erelation_2Eantisymmetric_2E1 _let_2)))) (forall ((V1l1_2E0 u) (V2l2_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V2l2_2E0))) (let ((_let_3 (_let_1 V1l1_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (c_2Esorting_2EQSORT_2E2 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)))) (= (= (_let_1 (_let_5 _let_3)) (_let_1 (_let_5 _let_2))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_3) _let_2))))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1t_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (not (exists ((V2x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Ebool_2EIN_2E2 ((s A_27a) V2x_2E0)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V1t_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (_let_2 (_let_1 V0s_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2EDISJOINT_2E2 (_let_1 V0s_2E0)) (_let_1 V1t_2E0))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool) Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0t1_2E0 u) (V1t2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0t1_2E0))) (let ((_let_3 (_let_1 V1t2_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (and (= (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) _let_2) _let_3)) _let_3) (= (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_2) _let_3)) _let_2))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Eind__type_2Erecspace A_27a))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eind__type_2Edest__rec_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eind__type_2Edest__rec_2E0)) _let_2)))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V1x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27a) V1x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((V0P_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V0P_2E0)) (_let_1 F0_2E0)))) mono_2Ec_2Ebool_2ET))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) mono_2Ec_2Ebool_2ET (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (and (= (=> (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))) V1Q) (forall ((V3x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))) V1Q))) (= (and V1Q (exists ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V4x_2E0)))))) (exists ((V5x_2E0 u)) (and V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V5x_2E0))))))) (= (exists ((V7x_2E0 u)) (and V1Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V7x_2E0)))))) (and V1Q (exists ((V6x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V6x_2E0))))))))) (forall ((V0 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (let ((_let_1 (s (tyop_2Elist_2Elist tyop_2Enum_2Enum)))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (_let_2 (i_mono_2Etyop_2Emin_2Ebool ((mono_2Ec_2Esorting_2EPERM_2Emono_2Etyop_2Enum_2Enum V0) V1))) (_let_2 ((c_2Esorting_2EPERM_2E2 (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29 V1)))))))) (forall ((A_27a d) (V0r_2E0 u) (V1s_2E0 u) (V2x1_2E0 u) (V3x2_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 ((c_2Eset__relation_2Eupper__bounds_2E2 (_let_3 V1s_2E0)) _let_2)))) (let ((_let_5 (s A_27a))) (let ((_let_6 (_let_5 V3x2_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_5 V2x1_2E0))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 ((s _let_1) ((c_2Epair_2E_2C_2E2 _let_8) _let_6))) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_8) _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 (c_2Eset__relation_2Etransitive_2E1 _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2EIN_2E2 _let_6) _let_4))))))))))))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EONTO_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0))) (_let_1 (c_2Ebool_2EONTO_2E1 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (= (and ((mono_2Ec_2Eprim__rec_2E_3C mono_2Ec_2Enum_2E0) V1n) ((mono_2Ec_2Eprim__rec_2E_3C V0m) V2p)) ((mono_2Ec_2Eprim__rec_2E_3C ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n)) ((mono_2Ec_2Earithmetic_2E_2A V2p) V1n)))) (forall ((V0 (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((F0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Enum_2Enum Bool))) (=> (forall ((V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V3t mono_2Etyop_2Enum_2Enum)) (= (not (V1a V3t)) ((F0 V1a) V3t))) (forall ((V0b (-> mono_2Etyop_2Enum_2Enum Bool)) (V1a (-> mono_2Etyop_2Enum_2Enum Bool)) (V2x mono_2Etyop_2Enum_2Enum)) (= (((mono_2Ec_2ETemporal__Logic_2EBEFORE V1a) V0b) V2x) (not (((mono_2Ec_2ETemporal__Logic_2ESUNTIL (F0 V1a)) V0b) V2x)))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0x_2E0 u) (V1x_27_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1x_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V0x_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1x_27_2E0))) (let ((_let_4 (_let_2 V0x_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2Ebool_2ERES__SELECT_2E2 _let_4) _let_3)) (_let_7 (c_2Emin_2E_40_2E1 (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3))))))))))))))) (forall ((V0A Bool) (V1B Bool)) (= (or V0A V1B) (=> (not V0A) V1B))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((V0A Bool) (V1B Bool)) (= (=> V1B V0A) (= (or V1B V0A) V0A))) (forall ((V0y Bool) (V1x Bool)) (= (=> (not V1x) (not V0y)) (=> V0y V1x))) (forall ((A_27x d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27x))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27x) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (_let_6 _let_7))) (= (_let_2 (((c_2Ebool_2ECOND_2E3 _let_5) _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_8)) c_2Ebool_2ECOND_2E0)) _let_5))) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1t_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (=> (= _let_2 (_let_1 V1t_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))))) (forall ((A_27a d) (A_27b d) (V0M_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0M_2E0)) ((s A_27a) V1x_2E0))))) (= _let_1 _let_1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0A Bool) (V1B Bool)) (= (or V1B V0A) (or V0A V1B))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) A_27c))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Elist_2Elist A_27c))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Elist_2EMAP_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Elist_2EMAP_2E0)) _let_5))) _let_3)))))))))))) (= (_let_22 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool)) (_let_22 c_2Ebool_2EDATATYPE_2E0)) (forall ((V0Q Bool) (V1P Bool)) (=> (=> (=> V1P V0Q) V1P) V1P)) (forall ((A_27a d) (A_27b d) (V0b Bool) (V1f_2E0 u) (V2g_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (_let_2 V2g_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_2 V1f_2E0))) (let ((_let_6 (c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0b))))) (= (_let_4 ((app_2E2 (_let_2 ((_let_6 _let_5) _let_3))) _let_1)) (_let_4 ((_let_6 (_let_4 ((app_2E2 _let_5) _let_1))) (_let_4 ((app_2E2 _let_3) _let_1)))))))))))) (forall ((V0n mono_2Etyop_2Enum_2Enum)) (=> (not (= V0n (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) (exists ((V1p mono_2Etyop_2Enum_2Enum)) (and (mono_2Ec_2Edivides_2Eprime V1p) ((mono_2Ec_2Edivides_2Edivides V1p) V0n))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V0P_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 _let_3) ((s A_27a) (c_2Emin_2E_40_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) _let_3))))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))))))))) (forall ((V0 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2Ebool_2EDATATYPE_2Emono_2Etyop_2Emin_2Ebool V0))) (_let_1 (c_2Ebool_2EDATATYPE_2E1 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0))))))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27c))) (let ((_let_4 (_let_3 A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun A_27a) A_27b)) (_let_3 A_27d)))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Equotient_2E_2D_2D_3E_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Equotient_2E_2D_2D_3E_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0 (-> Bool Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0t Bool)) (not (and (not V0t) V0t))) (forall ((V0a mono_2Etyop_2Enum_2Enum) (V1b mono_2Etyop_2Enum_2Enum)) (=> (and ((mono_2Ec_2Edivides_2Edivides V0a) V1b) ((mono_2Ec_2Edivides_2Edivides V1b) V0a)) (= V0a V1b))) (forall ((A_27a d) (V0P_2E0 u) (V1Q_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (=> (and (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0))))) (forall ((V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1Q_2E0)) _let_1))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 (_let_1 V1Q_2E0)) ((s A_27a) (c_2Emin_2E_40_2E1 (_let_1 V0P_2E0))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (not (forall ((V1n mono_2Etyop_2Enum_2Enum)) ((mono_2Ec_2Eprim__rec_2E_3C (V0f (mono_2Ec_2Enum_2ESUC V1n))) (V0f V1n))))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_3 (_let_1 (_let_2 (_let_1 V1s_2E0))))) (= (_let_1 (_let_2 _let_3)) _let_3))))) (forall ((A_27a d) (V0i_2E0 u)) (let ((_let_1 (s (tyop_2Ebool_2Eitself A_27a)))) (= (_let_1 V0i_2E0) (_let_1 c_2Ebool_2Ethe__value_2E0)))) (forall ((V0z Bool) (V1y Bool) (V2x Bool) (V3w Bool)) (=> (and (=> V2x V1y) (=> V0z V3w)) (=> (and V0z V2x) (and V1y V3w)))) (forall ((A_27a d) (V0Q_2E0 u) (V1P_2E0 u)) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1P_2E0)) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V0Q_2E0)) _let_1)))))))) (=> (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0))))) (exists ((V4x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0Q_2E0)) ((s A_27a) V4x_2E0)))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 (_let_1 tyop_2Enum_2Enum))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool))) (let ((_let_7 ((tyop_2Emin_2Efun _let_6) tyop_2Emin_2Ebool))) (let ((_let_8 ((tyop_2Emin_2Efun _let_2) _let_7))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Epred__set_2EINJ_2E3 _let_5) _let_3) ((s _let_6) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 X2))))) ((j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s _let_7) ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_8)) c_2Epred__set_2EINJ_2E0)) _let_5))) _let_3))) X2))))))))))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (or (and V0A V1B) (and V2C V0A)) (and (or V2C V1B) V0A))) (forall ((A_27a d)) (and (forall ((V2f_2E0 u) (V3n mono_2Etyop_2Enum_2Enum) (V4l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V4l_2E0))) (let ((_let_3 (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V3n)))) (let ((_let_4 (s tyop_2Enum_2Enum))) (let ((_let_5 (_let_4 (i_mono_2Etyop_2Enum_2Enum ((mono_2Ec_2Earithmetic_2E_2D _let_3) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))))) (let ((_let_6 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V2f_2E0))) (let ((_let_7 (c_2Elist_2EGENLIST__AUX_2E3 _let_6))) (= (_let_1 ((_let_7 (_let_4 (i_mono_2Etyop_2Enum_2Enum _let_3))) _let_2)) (_let_1 ((_let_7 _let_5) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 _let_6) _let_5))) _let_2))))))))))))) (forall ((V5f_2E0 u) (V6n mono_2Etyop_2Enum_2Enum) (V7l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V7l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 V6n)))))) (let ((_let_5 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V5f_2E0))) (let ((_let_6 (c_2Elist_2EGENLIST__AUX_2E3 _let_5))) (= (_let_1 ((_let_6 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 V6n))))) _let_2)) (_let_1 ((_let_6 _let_4) (_let_1 ((c_2Elist_2ECONS_2E2 ((s A_27a) ((app_2E2 _let_5) _let_4))) _let_2)))))))))))) (forall ((V0f_2E0 u) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (= (_let_1 (((c_2Elist_2EGENLIST__AUX_2E3 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) A_27a)) V0f_2E0)) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum mono_2Ec_2Enum_2E0))) _let_2)) _let_2)))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X2_2E0))) (let ((_let_4 (_let_2 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 tyop_2Emin_2Ebool)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (tyop_2Emin_2Efun _let_1))) (let ((_let_9 (_let_8 tyop_2Emin_2Ebool))) (let ((_let_10 (_let_8 _let_9))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 (((c_2Eoption_2EOPTREL_2E3 _let_7) _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) c_2Eoption_2EOPTREL_2E0)) _let_7))) _let_4))) _let_3)))))))))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Ebool_2ELET_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2ELET_2E0)) _let_4))) _let_1))))))))) (exists ((V0f (-> mono_2Etyop_2Emin_2Eind mono_2Etyop_2Emin_2Eind))) (and (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0f) (not (mono_2Ec_2Ebool_2EONTO_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind V0f)))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool)))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Erelation_2ERINTER_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Erelation_2ERINTER_2E0)) _let_4))) _let_3)))))))))) (forall ((A_27a d) (F2_2E0 u) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V1x_27_2E0 u) (V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_6 V1x_27_2E0))) (let ((_let_8 (app_2E2 _let_7))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_4 _let_5))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_6 ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_10)) F2_2E0)) _let_7))) _let_3))) _let_2))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 (_let_8 _let_3)))) (= _let_3 _let_2)))))))))))))) (=> (forall ((V0x_2E0 u) (V1x_27_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1x_27_2E0))) (let ((_let_6 (_let_2 _let_3))) (let ((_let_7 (tyop_2Emin_2Efun _let_3))) (let ((_let_8 (_let_4 V0x_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (let ((_let_10 (_let_7 _let_3))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_10) ((app_2E2 ((s (_let_7 _let_10)) F1_2E0)) _let_8))) _let_5))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2Ebool_2ERES__FORALL_2E2 _let_8) (_let_4 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_7 _let_6)) F2_2E0)) _let_5))) _let_1))))))))))))))))) (=> (forall ((V1x_27_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1x_27_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1x_27_2E0))) (let ((_let_4 (_let_2 V0x_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_1))) (let ((_let_8 (s _let_7))) (= (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) (_let_2 ((app_2E2 (_let_8 F0_2E0)) _let_3))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__FORALL_2E2 _let_4) (_let_2 ((app_2E2 (_let_8 ((app_2E2 ((s (_let_6 _let_7)) F1_2E0)) _let_4))) _let_3)))))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2ERES__EXISTS__UNIQUE_2E2 _let_4) _let_3))))))))))))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ebool_2ERES__ABSTRACT_2E2 _let_6) _let_4)) (_let_3 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_6))) _let_4))))))))))) (forall ((A_27a d) (A_27b d) (V0P_2E0 u) (V1Q_2E0 u) (V2l1_2E0 u) (V3l2_2E0 u)) (let ((_let_1 ((s (tyop_2Elist_2Elist A_27b)) V3l2_2E0))) (let ((_let_2 ((s (tyop_2Elist_2Elist A_27a)) V2l1_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (and (forall ((V4x_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27b))) (let ((_let_2 ((s _let_1) V4x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (tyop_2Elist_2Elist A_27b))) (let ((_let_6 (tyop_2Elist_2Elist A_27a))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Ebool_2EIN_2E2 _let_2) ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) (c_2Elist_2ELIST__TO__SET_2E1 ((s (tyop_2Elist_2Elist _let_1)) (c_2Elist_2EZIP_2E1 ((s ((tyop_2Epair_2Eprod _let_6) _let_5)) ((c_2Epair_2E_2C_2E2 ((s _let_6) V2l1_2E0)) ((s _let_5) V3l2_2E0)))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epair_2EUNCURRY_2E2 (_let_3 V0P_2E0)) _let_2)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Epair_2EUNCURRY_2E2 (_let_3 V1Q_2E0)) _let_2))))))))))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V0P_2E0)) _let_2) _let_1)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (((c_2Elist_2ELIST__REL_2E3 (_let_3 V1Q_2E0)) _let_2) _let_1))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V1x_27_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 ((c_2Ebool_2ELET_2E2 _let_2) _let_1)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (tyop_2Elist_2Elist A_27b)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_5 (s _let_4))) (= (_let_5 (c_2EdirGraph_2EParents_2E1 _let_3)) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_4)) c_2EdirGraph_2EParents_2E0)) _let_3))))))))) (forall ((A_27a d) (A_27b d) (V0e_2E0 u)) (exists ((V1f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Ebool_2Eitself A_27a))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) A_27b)) V1f_2E0)) ((s _let_2) c_2Ebool_2Ethe__value_2E0))) (_let_1 V0e_2E0)))))) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 ((s A_27a) V0x_2E0))) (= _let_1 _let_1))) (mono_2Ec_2Edivides_2Eprime _let_19) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (and (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0))))) V1Q) (exists ((V2x_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))) V1Q)))) (= (_let_17 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 mono_2Ec_2Erich__list_2ESEG_2Emono_2Etyop_2Estring_2Echar)) (_let_17 c_2Erich__list_2ESEG_2E0)) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun _let_2) (_let_1 _let_2))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Enum_2Enum))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 _let_3))) _let_3))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Eind) tyop_2Emin_2Eind)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (= (_let_2 ((c_2Elist_2EAPPEND_2E2 _let_4) _let_3)) (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Elist_2EAPPEND_2E0)) _let_4))) _let_3)))))))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (= V0P V1P_27) (=> (not V1P_27) (= V2Q V3Q_27))) (= (or V2Q V0P) (or V3Q_27 V1P_27)))) (forall ((A_27a d) (V0P_2E0 u)) (= (not (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1x_2E0)))))) (exists ((V2x_2E0 u)) (not (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Eoption_2EOPTION__APPLY_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Eoption_2EOPTION__APPLY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 ((s A_27a) V1x_27_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 ((c_2Ebool_2Eliteral__case_2E2 _let_2) _let_1)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (and (forall ((V0h mono_2Etyop_2Enum_2Enum) (V1t mono_2Etyop_2Elist_2Elist_28tyop_2Enum_2Enum_29)) (= (mono_2Ec_2Elist_2ESUM ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Enum_2Enum V0h) V1t)) ((mono_2Ec_2Earithmetic_2E_2B V0h) (mono_2Ec_2Elist_2ESUM V1t)))) (= (mono_2Ec_2Elist_2ESUM mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Enum_2Enum) mono_2Ec_2Enum_2E0)) (forall ((V0z Bool) (V1y Bool) (V2x Bool) (V3w Bool) (V4b Bool)) (let ((_let_1 (mono_2Ec_2Ebool_2ECOND_2Emono_2Etyop_2Emin_2Ebool V4b))) (=> (=> V2x V1y) (=> (=> V0z V3w) (=> ((_let_1 V2x) V0z) ((_let_1 V1y) V3w)))))) (forall ((V0P Bool) (V1Q Bool) (V2R Bool)) (= (=> V0P (and V1Q V2R)) (and (=> V0P V2R) (=> V0P V1Q)))) (forall ((V0 (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_3 (_let_2 (_let_2 _let_1)))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 V1)))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (tyop_2Ebool_2Eitself A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27b))) (= (_let_1 ((c_2Ebool_2Eitself__case_2E2 _let_4) _let_2)) (_let_1 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebool_2Eitself__case_2E0)) _let_4))) _let_2))))))))) (forall ((A_27c d) (A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 (tyop_2Elist_2Elist A_27c))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_3) _let_1))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2Epair_2E_2C_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2Epair_2E_2C_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V1h_2E0 u) (V2t_2E0 u) (V3x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3x_2E0))) (let ((_let_3 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_4 (_let_3 V2t_2E0))) (let ((_let_5 (_let_1 V1h_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (or (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2ELIST__TO__SET_2E2 _let_4) _let_2))) (= _let_2 _let_5)) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2ELIST__TO__SET_2E2 (_let_3 ((c_2Elist_2ECONS_2E2 _let_5) _let_4))) _let_2))))))))))) (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Elist_2ELIST__TO__SET_2E2 ((s (tyop_2Elist_2Elist A_27a)) c_2Elist_2ENIL_2E0)) ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2EF)))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2EFINITE_2E1 (_let_1 ((c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)) (_let_1 c_2Epred__set_2EEMPTY_2E0)))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Etrichotomous_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Etrichotomous_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 _let_3))) _let_3))))) (forall ((V0 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1y_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_2 V0x_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Esorting_2EPERM_2E2 _let_5) _let_3))) (= (_let_4 (c_2Esorting_2EPERM_2E1 _let_5)) (_let_4 (c_2Esorting_2EPERM_2E1 _let_3)))))))))) (forall ((A_27a d) (A_27b d) (V0M_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0M_2E0)) ((s A_27a) V1x_2E0))))) (= _let_1 _let_1))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Elist_2EisPREFIX_2Emono_2Etyop_2Estring_2Echar V0s1) V1s2) (exists ((V2s3 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= V1s2 ((mono_2Ec_2Elist_2EAPPEND_2Emono_2Etyop_2Estring_2Echar V0s1) V2s3))))) (forall ((V0t1 Bool) (V1t2 Bool) (V2t3 Bool)) (= (and V0t1 V1t2 V2t3) (and V1t2 V2t3 V0t1))) (forall ((A_27d d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Ellist_2Ellist A_27d))) (let ((_let_2 (tyop_2Ellist_2Ellist _let_1))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 ((s _let_1) X0_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun _let_2) _let_2))) (= (_let_3 ((c_2Ellist_2ELCONS_2E2 _let_5) _let_4)) (_let_3 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_6)) c_2Ellist_2ELCONS_2E0)) _let_5))) _let_4)))))))))) (= (_let_11 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Eind_2Ctyop_2Emin_2Eind_29_2Ctyop_2Emin_2Ebool_29 mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Emin_2Eind_20mono_2Etyop_2Emin_2Eind)) (_let_11 c_2Ebool_2EONE__ONE_2E0)) (forall ((A_27a d) (V0Q Bool) (V1P_2E0 u)) (= (or V0Q (forall ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V3x_2E0)))))) (forall ((V2x_2E0 u)) (or V0Q (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V1P_2E0)) ((s A_27a) V2x_2E0)))))))) (forall ((A_27b d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27b))) (let ((_let_6 (_let_5 A_27b))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27d d) (X0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27d))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Elist_2ELENGTH_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X2_2E0))) (let ((_let_3 (s A_27a))) (let ((_let_4 (_let_3 X1_2E0))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 (_let_5 A_27a)))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_1) A_27a))) (let ((_let_9 (_let_5 _let_8))) (= (_let_3 (((c_2Elist_2EFOLDL_2E3 _let_7) _let_4) _let_2)) (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2Elist_2EFOLDL_2E0)) _let_7))) _let_4))) _let_2))))))))))))) (forall ((A_27a d) (A_27b d)) (and (forall ((V3p_2E0 u) (V4m1_2E0 u) (V5m2_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 A_27b)))) (let ((_let_3 (c_2Ebool_2ERES__ABSTRACT_2E2 ((s (_let_1 tyop_2Emin_2Ebool)) V3p_2E0)))) (=> (forall ((V6x_2E0 u)) (let ((_let_1 ((s A_27a) V6x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (s (_let_2 A_27b)))) (let ((_let_4 (s A_27b))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) ((s (_let_2 tyop_2Emin_2Ebool)) V3p_2E0)))) (= (_let_4 ((app_2E2 (_let_3 V4m1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V5m2_2E0)) _let_1))))))))) (= (_let_2 (_let_3 (_let_2 V4m1_2E0))) (_let_2 (_let_3 (_let_2 V5m2_2E0))))))))) (forall ((V0p_2E0 u) (V1m_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 ((s (_let_2 A_27b)) V1m_2E0))) (let ((_let_4 (s A_27b))) (let ((_let_5 ((s (_let_2 tyop_2Emin_2Ebool)) V0p_2E0))) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2EIN_2E2 _let_1) _let_5))) (= (_let_4 (((c_2Ebool_2ERES__ABSTRACT_2E3 _let_5) _let_3) _let_1)) (_let_4 ((app_2E2 _let_3) _let_1)))))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1y_2E0 u)) (let ((_let_1 ((s A_27b) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0)) ((s A_27a) V1y_2E0))))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EDATATYPE_2E1 ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2ET)) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27b) _let_1))))) (let ((_let_4 ((s _let_3) X2_2E0))) (let ((_let_5 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_6 ((s _let_5) X1_2E0))) (let ((_let_7 ((tyop_2Esum_2Esum A_27a) A_27b))) (let ((_let_8 ((tyop_2Emin_2Efun _let_7) tyop_2Emin_2Ebool))) (let ((_let_9 ((s _let_8) X0_2E0))) (let ((_let_10 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_7) _let_1))))) (let ((_let_11 ((tyop_2Emin_2Efun _let_3) _let_10))) (let ((_let_12 ((tyop_2Emin_2Efun _let_5) _let_11))) (let ((_let_13 (s _let_10))) (= (_let_13 (((c_2EDecode_2Edecode__sum_2E3 _let_9) _let_6) _let_4)) (_let_13 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) c_2EDecode_2Edecode__sum_2E0)) _let_9))) _let_6))) _let_4))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1y_2E0))) (let ((_let_3 (_let_1 V0x_2E0))) (= (= _let_2 _let_3) (= _let_3 _let_2)))))) (forall ((V0t Bool)) (and (= (and V0t mono_2Ec_2Ebool_2EF) mono_2Ec_2Ebool_2EF) (= V0t (and V0t V0t)) (= (and mono_2Ec_2Ebool_2EF V0t) mono_2Ec_2Ebool_2EF) (= (and mono_2Ec_2Ebool_2ET V0t) V0t) (= (and V0t mono_2Ec_2Ebool_2ET) V0t))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((s A_27a) X0_2E0))) (let ((_let_2 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_2 (c_2Ebool_2EDATATYPE_2E1 _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) c_2Ebool_2EDATATYPE_2E0)) _let_1))))))) (forall ((A_27a d) (V0f_2E0 u) (V1v_2E0 u)) (= (forall ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (=> (= (_let_1 V1v_2E0) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) _let_2))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1v_2E0)))))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (forall ((V2x_2E0 u)) (=> (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))) V1Q)) (=> (exists ((V3x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0))))) V1Q))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((F3 (-> Bool Bool)) (F0 (-> Bool Bool)) (F1 (-> Bool Bool)) (F2 (-> Bool Bool))) (=> (forall ((V4b Bool)) (= (F3 V4b) (not V4b))) (=> (forall ((V1b Bool)) (= (F0 V1b) mono_2Ec_2Ebool_2ET)) (=> (forall ((V2b Bool)) (= (F1 V2b) mono_2Ec_2Ebool_2EF)) (=> (forall ((V3b Bool)) (= (F2 V3b) V3b)) (forall ((V0P (-> (-> Bool Bool) Bool))) (=> (and (V0P F1) (V0P F2) (V0P F3) (V0P F0)) (forall ((V5f (-> Bool Bool))) (V0P V5f))))))))) (forall ((V0A Bool) (V1B Bool) (V2C Bool)) (= (and (or V2C V0A) (or V0A V1B)) (or (and V1B V2C) V0A))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod (tyop_2Eoption_2Eoption A_27a)) _let_1)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun _let_1) _let_2)))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod A_27a) _let_1))) (let ((_let_6 ((s _let_5) X0_2E0))) (let ((_let_7 ((tyop_2Emin_2Efun _let_3) _let_2))) (let ((_let_8 (s _let_2))) (= (_let_8 ((c_2Epair_2Epair__CASE_2E2 _let_6) _let_4)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_7)) c_2Epair_2Epair__CASE_2E0)) _let_6))) _let_4)))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Eone_2Eone))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Eone_2Eone (j_mono_2Etyop_2Eone_2Eone _let_2))) _let_2)))) (forall ((V0P Bool) (V1Q Bool) (V2R Bool)) (= (=> (or V0P V1Q) V2R) (and (=> V1Q V2R) (=> V0P V2R)))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> mono_2Etyop_2Estring_2Echar mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) _let_1))) (let ((_let_3 ((tyop_2Emin_2Efun _let_1) _let_1))) (let ((_let_4 (s _let_3))) (= (_let_4 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 (V0 V1))) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_3)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 V0))) ((s _let_2) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29 V1)))))))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 ((c_2Ebool_2Eliteral__case_2E2 _let_2) _let_1)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 ((s A_27a) X2_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (let ((_let_9 (s A_27b))) (= (_let_9 (((c_2Ebool_2ERES__ABSTRACT_2E3 _let_7) _let_5) _let_1)) (_let_9 ((app_2E2 (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Ebool_2ERES__ABSTRACT_2E0)) _let_7))) _let_5))) _let_1))))))))))))) (forall ((A_27a d) (V0b1_2E0 u) (V1b2_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0b1_2E0))) (let ((_let_3 (_let_1 V1b2_2E0))) (= (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_2) _let_3)) (_let_1 ((c_2Ebag_2EBAG__UNION_2E2 _let_3) _let_2))))))) (forall ((A_27a d) (V0P_2E0 u) (V1B_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)))) (let ((_let_3 (_let_2 V1B_2E0))) (let ((_let_4 (s _let_1))) (let ((_let_5 (_let_4 V0P_2E0))) (= (_let_4 (c_2Epred__set_2EBIGINTER_2E1 (_let_2 ((c_2Epred__set_2EINSERT_2E2 _let_5) _let_3)))) (_let_4 ((c_2Epred__set_2EINTER_2E2 _let_5) (_let_4 (c_2Epred__set_2EBIGINTER_2E1 _let_3))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1)))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__FORALL_2E2 (_let_1 V0P_2E0)) (_let_1 V1f_2E0))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2EEncode_2Etree A_27a))) (let ((_let_2 (tyop_2Elist_2Elist _let_1))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) _let_1))) (let ((_let_6 (s _let_1))) (= (_let_6 ((c_2EEncode_2ENode_2E2 _let_4) _let_3)) (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_5)) c_2EEncode_2ENode_2E0)) _let_4))) _let_3)))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> V1t2 (or V0t1 V1t2))) (forall ((V0 (-> Bool Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 ((s (_let_1 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((A_27b d) (A_27c d) (A_27s d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27s))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27s)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) _let_2))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27s))) _let_2))) (let ((_let_6 (s _let_5))) (= (_let_6 (c_2Estate__transformer_2EEXT_2E1 _let_4)) (_let_6 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Estate__transformer_2EEXT_2E0)) _let_4)))))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0a_2E0 u) (V1x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1x_2E0))) (let ((_let_3 (_let_1 V0a_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_2 _let_3) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) F0_2E0)) _let_3))) _let_2)))))))))) (forall ((V0a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 ((s _let_2) ((app_2E2 ((s (_let_1 _let_2)) F0_2E0)) ((s A_27a) V0a_2E0))))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_2 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) (tyop_2Eoption_2Eoption tyop_2Enum_2Enum)))) _let_1))) (let ((_let_3 (s ((tyop_2Emin_2Efun _let_2) _let_2)))) (let ((_let_4 (_let_3 V0_2E0))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_2Ctyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29 _let_4))) _let_4)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2EquantHeuristics_2EGUESS__EXISTS_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2EquantHeuristics_2EGUESS__EXISTS_2E0)) _let_4))) _let_2))))))))))) (forall ((V0t Bool)) (let ((_let_1 (not V0t))) (and (= (= mono_2Ec_2Ebool_2ET V0t) V0t) (= _let_1 (= mono_2Ec_2Ebool_2EF V0t)) (= (= V0t mono_2Ec_2Ebool_2EF) _let_1) (= V0t (= V0t mono_2Ec_2Ebool_2ET))))) (forall ((V0 (-> (-> Bool Bool) Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2M_2E0 u) (V3N_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3N_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V2M_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s A_27b))) (=> (= _let_2 (_let_1 V3N_2E0)) (= (_let_4 ((app_2E2 (_let_3 V0f_2E0)) _let_2)) (_let_4 ((app_2E2 (_let_3 V1g_2E0)) _let_2)))))))))) (= (_let_4 ((c_2Ebool_2Eliteral__case_2E2 (_let_3 V0f_2E0)) _let_5)) (_let_4 ((c_2Ebool_2Eliteral__case_2E2 (_let_3 V1g_2E0)) _let_2)))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool Bool) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 ((s ((tyop_2Emin_2Efun (_let_1 ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool))) (_let_1 tyop_2Enum_2Enum))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 V0))) V0))) (forall ((A_27a d) (V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0))) (let ((_let_2 (s A_27a))) (let ((_let_3 (app_2E2 _let_1))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 V1x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (_let_3 (_let_2 (c_2Emin_2E_40_2E1 _let_1))))))))))) (forall ((V0 (-> Bool mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29 mono_2Etyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29))) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) ((tyop_2Emin_2Efun _let_1) _let_1))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 V0))) V0))) (forall ((V0p mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2m mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (mono_2Ec_2Earithmetic_2E_2D V0p))) (=> (and ((mono_2Ec_2Earithmetic_2E_3C_3D V2m) V0p) ((mono_2Ec_2Earithmetic_2E_3C_3D V1n) V0p)) (= (= (_let_1 V1n) (_let_1 V2m)) (= V1n V2m))))) (forall ((A_27a d) (V0R_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (((c_2Erelation_2ERTC_2E3 ((s (_let_4 (_let_4 tyop_2Emin_2Ebool))) V0R_2E0)) _let_3) _let_2))) (or (= _let_3 _let_2) (exists ((V3u_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3u_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (_let_3 tyop_2Emin_2Ebool))) (let ((_let_5 ((s (_let_3 _let_4)) V0R_2E0))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_6 (((c_2Erelation_2ERTC_2E3 _let_5) _let_2) (_let_1 V2y_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_4) ((app_2E2 _let_5) (_let_1 V1x_2E0)))) _let_2)))))))))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))) (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))))) (forall ((A_27a d) (V0P Bool) (V1Q Bool)) (= (exists ((V2x_2E0 u)) (and V1Q V0P)) (and (exists ((V3x_2E0 u)) V0P) (exists ((V4x_2E0 u)) V1Q)))) (forall ((A_27a d) (V0P_2E0 u) (V1Q Bool)) (= (and V1Q (forall ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))) (forall ((V3x_2E0 u)) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V3x_2E0)))) V1Q)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)) V0r_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((c_2Eset__relation_2Ereflexive_2E2 _let_1) ((s _let_3) c_2Epred__set_2EUNIV_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Ereflexive_2E1 ((s (_let_2 _let_3)) (c_2Eset__relation_2Ereln__to__rel_2E1 _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2EONTO_2E1 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0)))) (forall ((V1y_2E0 u)) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27b))) (= (_let_1 V1y_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0x_2E0)) ((s A_27a) V2x_2E0))))))))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (= V0P V1P_27) (=> V1P_27 (= V2Q V3Q_27))) (= (and V0P V2Q) (and V3Q_27 V1P_27)))) (forall ((V0 Bool) (V1 Bool)) (= (and V1 V0) ((mono_2Ec_2Ebool_2E_2F_5C V0) V1))) (forall ((A_27a d) (F0 (-> Bool Bool Bool))) (=> (forall ((V2P1 Bool) (V3P2 Bool)) (= (and V3P2 V2P1) ((F0 V2P1) V3P2))) (forall ((V0v_2E0 u) (V1i_2E0 u) (V2P1 Bool) (V3P2 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (s A_27a))) (let ((_let_3 ((c_2EquantHeuristics_2ESIMPLE__GUESS__EXISTS_2E3 (_let_2 V0v_2E0)) (_let_2 V1i_2E0)))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool V3P2))))) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (_let_3 (_let_1 (i_mono_2Etyop_2Emin_2Ebool ((F0 V2P1) V3P2))))))))))))) (forall ((A_27a d) (V0s_2E0 u) (V1x_2E0 u) (V2y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2y_2E0))) (let ((_let_3 (_let_1 V1x_2E0))) (let ((_let_4 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_5 (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_2) (_let_4 c_2Epred__set_2EEMPTY_2E0))))) (let ((_let_6 (_let_4 V0s_2E0))) (= (= (_let_4 ((c_2Epred__set_2EINSERT_2E2 _let_3) _let_6)) _let_5) (and (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Epred__set_2ESUBSET_2E2 _let_6) _let_5))) (= _let_3 _let_2)))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> V0t1 (or V1t2 V0t1))) (forall ((V0t1 Bool) (V1t2 Bool)) (=> (=> V0t1 V1t2) (=> (=> V1t2 V0t1) (= V0t1 V1t2)))) (forall ((A_27a d) (A_27b d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((tyop_2Emin_2Efun A_27a) _let_3))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (tyop_2Eoption_2Eoption _let_3))) (let ((_let_7 ((tyop_2Emin_2Efun _let_1) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Eoption_2EOPTION__MAP_2E2 _let_5) _let_2)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Eoption_2EOPTION__MAP_2E0)) _let_5))) _let_2)))))))))))) (forall ((V0t1 Bool) (V1t2 Bool)) (let ((_let_1 (and V1t2 V0t1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0x_2E0 u) (V1x_27_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V0x_2E0)) (_let_1 V1x_27_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V0x_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1x_27_2E0)) _let_1))))))))))) (forall ((A_27a d) (A_27b d) (V0o1_2E0 u) (V1o2_2E0 u) (V2f1_2E0 u) (V3f2_2E0 u)) (let ((_let_1 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) _let_1)))) (let ((_let_3 (s (tyop_2Eoption_2Eoption A_27a)))) (let ((_let_4 (_let_3 V1o2_2E0))) (let ((_let_5 (s _let_1))) (let ((_let_6 (_let_3 V0o1_2E0))) (=> (and (= _let_6 _let_4) (forall ((V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Eoption_2Eoption A_27b))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) _let_2)))) (let ((_let_4 (s _let_2))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (= (_let_5 V1o2_2E0) (_let_5 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_4 ((app_2E2 (_let_3 V2f1_2E0)) _let_1)) (_let_4 ((app_2E2 (_let_3 V3f2_2E0)) _let_1))))))))))) (= (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 _let_6) (_let_2 V2f1_2E0))) (_let_5 ((c_2Eoption_2EOPTION__BIND_2E2 _let_4) (_let_2 V3f2_2E0)))))))))))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0p1_2E0 u) (V1p2_2E0 u) (V2e1_2E0 u) (V3e2_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun A_27b))) (let ((_let_3 ((s (_let_2 _let_1)) V3e2_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 ((s (_let_4 _let_1)) V2e1_2E0))) (let ((_let_6 (tyop_2Emin_2Efun ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_7 ((s (_let_2 tyop_2Emin_2Ebool)) V1p2_2E0))) (let ((_let_8 ((s (_let_4 tyop_2Emin_2Ebool)) V0p1_2E0))) (let ((_let_9 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 _let_7) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 _let_8) _let_5)))) (j_mono_2Etyop_2Emin_2Ebool (_let_9 ((c_2EEncode_2Ewf__encoder_2E2 ((s (_let_6 tyop_2Emin_2Ebool)) ((c_2EEncode_2Elift__sum_2E2 _let_8) _let_7))) ((s (_let_6 _let_1)) ((c_2EEncode_2Eencode__sum_2E2 _let_5) _let_3)))))))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D (mono_2Ec_2Enum_2ESUC V0m)) V1n))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Ebool_2ERES__EXISTS_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Ebool_2ERES__EXISTS_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0f1_2E0 u) (V1a_2E0 u) (V2a0_2E0 u) (V3f_2E0 u) (V4f0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 A_27a)))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V4f0_2E0))) (let ((_let_5 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) V0f1_2E0))) (let ((_let_6 (s A_27a))) (let ((_let_7 (((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_6 V1a_2E0)) (_let_6 V2a0_2E0)) (_let_3 V3f_2E0)))) (let ((_let_8 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (= (_let_8 ((c_2Esemi__ring_2Esemi__ring__SRM__fupd_2E2 _let_5) (_let_8 (_let_7 _let_4)))) (_let_8 (_let_7 (_let_3 ((app_2E2 _let_5) _let_4)))))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1x_27_2E0 u)) (= (and (forall ((V4x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)) ((s A_27a) V4x_2E0)))) (exists ((V5x_27_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V4x_2E0) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1x_27_2E0)) ((s A_27b) V5x_27_2E0)))))))) (forall ((V2x_27_2E0 u) (V3x_27_27_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (_let_1 V3x_27_27_2E0))) (let ((_let_3 (_let_1 V2x_27_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1x_27_2E0)))) (let ((_let_5 (s A_27a))) (=> (= (_let_5 (_let_4 _let_3)) (_let_5 (_let_4 _let_2))) (= _let_3 _let_2))))))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)) ((s ((tyop_2Emin_2Efun A_27b) A_27a)) V1x_27_2E0)))))) (forall ((V0 (-> Bool mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) (_let_1 (_let_1 tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0))) (forall ((A_27a d) (X0 Bool) (X1_2E0 u) (X2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X2_2E0))) (let ((_let_3 (_let_1 X1_2E0))) (let ((_let_4 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool X0)))) (let ((_let_5 (tyop_2Emin_2Efun A_27a))) (let ((_let_6 (_let_5 A_27a))) (let ((_let_7 (_let_5 _let_6))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 _let_4) _let_3) _let_2)) (_let_1 ((app_2E2 ((s _let_6) ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_7)) c_2Ebool_2ECOND_2E0)) _let_4))) _let_3))) _let_2))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0t Bool)) (=> (not V0t) (=> V0t mono_2Ec_2Ebool_2EF))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u) (V2M_2E0 u) (V3N_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3N_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s A_27b))) (let ((_let_5 (_let_1 V2M_2E0))) (=> (and (= _let_5 _let_2) (forall ((V4x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4x_2E0))) (let ((_let_3 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_4 (s A_27b))) (=> (= _let_2 (_let_1 V3N_2E0)) (= (_let_4 ((app_2E2 (_let_3 V0f_2E0)) _let_2)) (_let_4 ((app_2E2 (_let_3 V1g_2E0)) _let_2)))))))))) (= (_let_4 ((c_2Ebool_2ELET_2E2 (_let_3 V0f_2E0)) _let_5)) (_let_4 ((c_2Ebool_2ELET_2E2 (_let_3 V1g_2E0)) _let_2)))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0y_2E0 u) (V1x_2E0 u) (V2f_2E0 u)) (let ((_let_1 ((s (tyop_2Eoption_2Eoption A_27b)) V0y_2E0))) (let ((_let_2 ((s (tyop_2Eoption_2Eoption A_27a)) V1x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V2f_2E0))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27c)))) (= (_let_5 ((c_2Eoption_2EOPTION__APPLY_2E2 ((s (tyop_2Eoption_2Eoption _let_3)) ((c_2Eoption_2EOPTION__MAP_2E2 _let_4) _let_2))) _let_1)) (_let_5 (((c_2Eoption_2EOPTION__MAP2_2E3 _let_4) _let_2) _let_1))))))))) (forall ((A_27a d) (A_27c d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((s A_27a) X1_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27c))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 X0_2E0))) (let ((_let_5 (s A_27c))) (= (_let_5 ((c_2Ebool_2Eliteral__case_2E2 _let_4) _let_1)) (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) c_2Ebool_2Eliteral__case_2E0)) _let_4))) _let_1))))))))) (forall ((A_27a d) (V0P Bool) (V1Q Bool) (V2x_2E0 u) (V3x_27_2E0 u) (V4y_2E0 u) (V5y_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_27_2E0))) (let ((_let_3 (_let_1 V3x_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V4y_2E0))) (let ((_let_6 (_let_1 V2x_2E0))) (=> (and (=> V1Q (= _let_6 _let_3)) (=> (not V1Q) (= _let_5 _let_2)) (= V0P V1Q)) (= (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V0P))) _let_6) _let_5)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V1Q))) _let_3) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((s A_27a) X0_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Elist_2EUNIQUE_2E2 _let_3) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 ((s _let_4) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_4)) c_2Elist_2EUNIQUE_2E0)) _let_3))) _let_2)))))))))) (forall ((A_27a d)) (exists ((V0rep_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ETYPE__DEFINITION_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) (c_2Emin_2E_3D_2E1 ((s A_27a) c_2Ebool_2EARB_2E0)))) ((s ((tyop_2Emin_2Efun (tyop_2Ebool_2Eitself A_27a)) A_27a)) V0rep_2E0)))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29 mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (tyop_2Eoption_2Eoption tyop_2Enum_2Enum))) (let ((_let_2 ((tyop_2Emin_2Efun _let_1) ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) _let_1)))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 (V0 V1))) (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29_29 V0))) ((s tyop_2Enum_2Enum) (i_mono_2Etyop_2Enum_2Enum V1))))))))) (forall ((A_27a d) (V0a_2E0 u)) (exists ((V1x_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V1x_2E0) (_let_1 V0a_2E0))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eirreflexive_2E0)) _let_3))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Ebool_2ERES__EXISTS_2E2 (_let_1 V0P_2E0)) (_let_1 V1f_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((c_2Ebool_2EIN_2E2 _let_1) (_let_2 V0P_2E0)))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 (_let_2 V1f_2E0)) _let_1))))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((A_27a d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 (_let_1 V1y_2E0))) (=> (= _let_2 _let_3) (= _let_3 _let_2)))))) (forall ((V0 mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29)) (let ((_let_1 ((tyop_2Epair_2Eprod tyop_2Emin_2Ebool) (tyop_2Elist_2Elist tyop_2Emin_2Ebool)))) (let ((_let_2 (s (tyop_2Eoption_2Eoption _let_1)))) (= (_let_2 (i_mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (mono_2Ec_2Eoption_2ESOME_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0))) (_let_2 (c_2Eoption_2ESOME_2E1 ((s _let_1) (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Emin_2Ebool_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 V0)))))))) (forall ((A_27a d) (A_27b d) (F1_2E0 u) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1N_2E0 u) (V4x_2E0 u)) (let ((_let_1 ((s A_27a) V4x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1N_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_6 ((s _let_5) V0P_2E0))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_8) ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_5) _let_9)) F1_2E0)) _let_6))) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 _let_6) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (=> (forall ((V1N_2E0 u) (V3x_2E0 u)) (let ((_let_1 ((s A_27a) V3x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) A_27b))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1N_2E0))) (let ((_let_5 (s A_27b))) (= (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1)) (_let_5 ((app_2E2 _let_4) _let_1))))))))) (forall ((V0P_2E0 u) (V1N_2E0 u) (V2M_2E0 u)) (let ((_let_1 ((s A_27a) V2M_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V1N_2E0))) (let ((_let_6 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) V0P_2E0))) (let ((_let_8 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_9 (tyop_2Emin_2Efun _let_3))) (let ((_let_10 (_let_9 _let_8))) (let ((_let_11 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((app_2E2 _let_7) ((s A_27b) ((c_2Ebool_2ELET_2E2 (_let_4 ((app_2E2 ((s (_let_9 _let_3)) F0_2E0)) _let_5))) _let_1))))) (j_mono_2Etyop_2Emin_2Ebool (_let_11 ((c_2Ebool_2ELET_2E2 ((s _let_8) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) F1_2E0)) _let_7))) _let_5))) _let_1))))))))))))))))))) (forall ((V0 Bool) (V1 Bool)) (= (or V0 V1) ((mono_2Ec_2Ebool_2E_5C_2F V0) V1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27c))) (let ((_let_2 (tyop_2Emin_2Efun A_27c))) (let ((_let_3 ((s (_let_2 _let_1)) V1g_2E0))) (let ((_let_4 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_5 (s (_let_2 A_27b)))) (let ((_let_6 ((tyop_2Epair_2Eprod A_27b) A_27c))) (= (_let_5 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_6) A_27b)) c_2Epair_2EFST_2E0)) ((s (_let_2 _let_6)) ((c_2Estate__transformer_2EMMAP_2E2 _let_4) _let_3)))) (_let_5 ((c_2Ecombin_2Eo_2E2 _let_4) ((s (_let_2 A_27a)) ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun _let_1) A_27a)) c_2Epair_2EFST_2E0)) _let_3)))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((s A_27a) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2EIN_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_1 _let_5)) c_2Ebool_2EIN_2E0)) _let_4))) _let_3))))))))))) (forall ((A_27a d) (V0y_2E0 u) (V1x_2E0 u) (V2i_2E0 u) (V3R_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (s (_let_1 tyop_2Enum_2Enum)))) (let ((_let_3 (_let_2 V2i_2E0))) (let ((_let_4 (_let_2 V0y_2E0))) (let ((_let_5 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_6 (s _let_5))) (let ((_let_7 (_let_2 V1x_2E0))) (let ((_let_8 ((s (_let_1 _let_5)) V3R_2E0))) (let ((_let_9 (c_2Ebag_2Edominates_2E3 _let_8))) (let ((_let_10 (s tyop_2Emin_2Ebool))) (let ((_let_11 (c_2Ebag_2ESUB__BAG_2E2 _let_3))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_6 (c_2Ebag_2ESET__OF__BAG_2E1 _let_7))) (_let_6 (c_2Ebag_2ESET__OF__BAG_2E1 _let_4))))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_4))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (_let_11 _let_7))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Ebag_2EFINITE__BAG_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2Etransitive_2E1 _let_8))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 (c_2Erelation_2EWF_2E1 _let_8)))) (j_mono_2Etyop_2Emin_2Ebool (_let_10 ((_let_9 (_let_6 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_7) _let_3))))) (_let_6 (c_2Ebag_2ESET__OF__BAG_2E1 (_let_2 ((c_2Ebag_2EBAG__DIFF_2E2 _let_4) _let_3)))))))))))))))))))) (forall ((A_27a d) (V0x_2E0 u)) (= (forall ((V1x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)) ((s A_27a) V1x_2E0)))) mono_2Ec_2Ebool_2ET)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0x_2E0)))))) (forall ((A_27a d) (V0a_2E0 u) (V1a0_2E0 u) (V2f_2E0 u) (V3f0_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1a0_2E0))) (let ((_let_3 (tyop_2Emin_2Efun A_27a))) (let ((_let_4 (s (_let_3 (_let_3 A_27a))))) (= (_let_1 (c_2Esemi__ring_2Esemi__ring__SR1_2E1 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 (_let_1 V0a_2E0)) _let_2) (_let_4 V2f_2E0)) (_let_4 V3f0_2E0))))) _let_2)))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 A_27b))) (let ((_let_3 ((s _let_2) X1_2E0))) (let ((_let_4 ((tyop_2Emin_2Efun A_27b) A_27a))) (let ((_let_5 ((s _let_4) X0_2E0))) (let ((_let_6 (_let_1 A_27a))) (let ((_let_7 ((tyop_2Emin_2Efun _let_2) _let_6))) (let ((_let_8 (s _let_6))) (= (_let_8 ((c_2Ecombin_2Eo_2E2 _let_5) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_4) _let_7)) c_2Ecombin_2Eo_2E0)) _let_5))) _let_3)))))))))))) (forall ((V0x Bool) (V1x_27 Bool)) (= (or V0x V1x_27) (forall ((V2t Bool)) (=> (=> V0x V2t) (=> (=> V1x_27 V2t) V2t))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Epred__set_2ECARD_2E1 _let_2))) (j_mono_2Etyop_2Enum_2Enum (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Enum_2Enum)) c_2Epred__set_2ECARD_2E0)) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0v_2E0 u) (V1o2_2E0 u) (V2o1_2E0 u) (V3f_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27c)))) (= (= (_let_1 (((c_2Eoption_2EOPTION__MAP2_2E3 ((s ((tyop_2Emin_2Efun A_27a) ((tyop_2Emin_2Efun A_27b) A_27c))) V3f_2E0)) ((s (tyop_2Eoption_2Eoption A_27a)) V2o1_2E0)) ((s (tyop_2Eoption_2Eoption A_27b)) V1o2_2E0))) (_let_1 (c_2Eoption_2ESOME_2E1 ((s A_27c) V0v_2E0)))) (exists ((V4x1_2E0 u) (V5x2_2E0 u)) (let ((_let_1 ((s A_27b) V5x2_2E0))) (let ((_let_2 ((s A_27a) V4x1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_4 (s A_27c))) (let ((_let_5 (s (tyop_2Eoption_2Eoption A_27b)))) (let ((_let_6 (s (tyop_2Eoption_2Eoption A_27a)))) (and (= (_let_6 V2o1_2E0) (_let_6 (c_2Eoption_2ESOME_2E1 _let_2))) (= (_let_5 V1o2_2E0) (_let_5 (c_2Eoption_2ESOME_2E1 _let_1))) (= (_let_4 V0v_2E0) (_let_4 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) V3f_2E0)) _let_2))) _let_1)))))))))))))) (forall ((V0x Bool)) (= (mono_2Ec_2Ebool_2EBOUNDED V0x) mono_2Ec_2Ebool_2ET)) (forall ((V0P (-> mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 Bool))) (=> (and (forall ((V1s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P V1s) mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar)) (forall ((V4c1 mono_2Etyop_2Estring_2Echar) (V5s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V6c2 mono_2Etyop_2Estring_2Echar) (V7s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (=> ((V0P V5s1) V7s2) ((V0P ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V4c1) V5s1)) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V6c2) V7s2)))) (forall ((V2c mono_2Etyop_2Estring_2Echar) (V3s mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P mono_2Ec_2Elist_2ENIL_2Emono_2Etyop_2Estring_2Echar) ((mono_2Ec_2Elist_2ECONS_2Emono_2Etyop_2Estring_2Echar V2c) V3s)))) (forall ((V8v mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V9v1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) ((V0P V8v) V9v1)))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V0P_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) _let_2)) F0_2E0)) _let_4))) _let_1))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))) (forall ((V0P_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_21_2E1 (_let_2 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_1)) F0_2E0)) (_let_2 V0P_2E0)))))) (and (forall ((V3x_2E0 u) (V4y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V4y_2E0))) (let ((_let_3 (_let_1 V3x_2E0))) (let ((_let_4 (app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (=> (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 (_let_4 _let_3)))) (= _let_3 _let_2)))))))) (exists ((V2x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V2x_2E0)))))))))))) (forall ((V0x mono_2Etyop_2Enum_2Enum) (V1y mono_2Etyop_2Enum_2Enum)) (let ((_let_1 ((mono_2Ec_2Earithmetic_2E_2B V0x) V1y))) (= (mono_2Ec_2Epred__set_2Epair__to__num ((mono_2Ec_2Epair_2E_2C_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0x) V1y)) ((mono_2Ec_2Earithmetic_2E_2B ((mono_2Ec_2Earithmetic_2EDIV ((mono_2Ec_2Earithmetic_2E_2A ((mono_2Ec_2Earithmetic_2E_2B _let_1) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO)))) _let_1)) (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT2 mono_2Ec_2Earithmetic_2EZERO)))) V1y)))) (forall ((V0t Bool) (V1t1 Bool) (V2t2 Bool)) (=> (or V1t1 V2t2) (=> (=> V1t1 V0t) (=> (=> V2t2 V0t) V0t)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_21_2E0)) _let_2)))))))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum)) (V1 mono_2Etyop_2Enum_2Enum)) (let ((_let_1 (s tyop_2Enum_2Enum))) (= (_let_1 (i_mono_2Etyop_2Enum_2Enum (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Enum_2Enum)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 V0))) (_let_1 (i_mono_2Etyop_2Enum_2Enum V1))))))) (forall ((V0v Bool)) (= (mono_2Ec_2Ebool_2EBOUNDED V0v) mono_2Ec_2Ebool_2ET)) (forall ((V0t1 Bool) (V1t2 Bool) (V2t3 Bool)) (= (=> V0t1 (=> V1t2 V2t3)) (=> (and V0t1 V1t2) V2t3))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27a))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 ((tyop_2Epair_2Eprod _let_1) _let_1))) (let ((_let_6 (tyop_2Emin_2Efun _let_1))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 (s _let_5))) (= (_let_8 ((c_2Epair_2E_2C_2E2 _let_4) _let_3)) (_let_8 ((app_2E2 ((s _let_7) ((app_2E2 ((s (_let_6 _let_7)) c_2Epair_2E_2C_2E0)) _let_4))) _let_3)))))))))))) (forall ((V0 (-> (-> mono_2Etyop_2Enum_2Enum Bool) mono_2Etyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0P_2E0 u) (V1f_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (let ((_let_4 (_let_3 V1f_2E0))) (let ((_let_5 (s tyop_2Emin_2Ebool))) (let ((_let_6 (_let_3 V0P_2E0))) (let ((_let_7 (tyop_2Emin_2Efun _let_2))) (let ((_let_8 (_let_7 _let_2))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 (_let_3 ((app_2E2 ((s _let_8) ((app_2E2 ((s (_let_7 _let_8)) F0_2E0)) _let_6))) _let_4))) _let_1))) (and (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((c_2Ebool_2EIN_2E2 _let_1) _let_6))) (j_mono_2Etyop_2Emin_2Ebool (_let_5 ((app_2E2 _let_4) _let_1)))))))))))))) (forall ((V0P_2E0 u) (V1f_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 V1f_2E0))) (let ((_let_4 (_let_2 V0P_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 _let_1))) (let ((_let_7 (s A_27a))) (= (_let_7 ((c_2Ebool_2ERES__SELECT_2E2 _let_4) _let_3)) (_let_7 (c_2Emin_2E_40_2E1 (_let_2 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) F0_2E0)) _let_4))) _let_3))))))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod A_27a) _let_1))))) (let ((_let_4 ((s _let_3) X1_2E0))) (let ((_let_5 (tyop_2EEncode_2Etree A_27a))) (let ((_let_6 ((tyop_2Emin_2Efun _let_5) tyop_2Emin_2Ebool))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 (_let_2 (tyop_2Eoption_2Eoption ((tyop_2Epair_2Eprod _let_5) _let_1))))) (let ((_let_9 ((tyop_2Emin_2Efun _let_3) _let_8))) (let ((_let_10 (s _let_8))) (= (_let_10 ((c_2EDecode_2Edecode__tree_2E2 _let_7) _let_4)) (_let_10 ((app_2E2 ((s _let_9) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_9)) c_2EDecode_2Edecode__tree_2E0)) _let_7))) _let_4)))))))))))))) (forall ((V0A Bool) (V1B Bool)) (= (or (not V0A) V1B) (=> V0A V1B))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (s _let_1))) (let ((_let_3 (_let_2 X1_2E0))) (let ((_let_4 (_let_2 X0_2E0))) (let ((_let_5 (tyop_2Emin_2Efun _let_1))) (let ((_let_6 (_let_5 tyop_2Emin_2Ebool))) (let ((_let_7 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((c_2Epred__set_2EDISJOINT_2E2 _let_4) _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s (_let_5 _let_6)) c_2Epred__set_2EDISJOINT_2E0)) _let_4))) _let_3)))))))))))) (forall ((A_27a d) (V0P_2E0 u) (V1a_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1a_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (and (= (_let_1 V1a_2E0) _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))) (forall ((V0A Bool) (V1B Bool)) (let ((_let_1 (not V1B))) (let ((_let_2 (not V0A))) (and (= (or _let_1 _let_2) (not (and V1B V0A))) (= (and _let_2 _let_1) (not (or V0A V1B))))))) (forall ((V0 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29 mono_2Etyop_2Enum_2Enum) mono_2Etyop_2Enum_2Enum mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 mono_2Etyop_2Enum_2Enum))) (let ((_let_1 (tyop_2Epair_2Eprod tyop_2Enum_2Enum))) (let ((_let_2 (_let_1 tyop_2Enum_2Enum))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 ((s ((tyop_2Emin_2Efun ((tyop_2Emin_2Efun (_let_1 _let_2)) tyop_2Enum_2Enum)) ((tyop_2Emin_2Efun tyop_2Enum_2Enum) ((tyop_2Emin_2Efun _let_2) tyop_2Enum_2Enum)))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Enum_2Enum_29_2Ctyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_2Ctyop_2Enum_2Enum_29_29_29 V0))) V0)))) (= (forall ((V0x Bool)) (= V0x V0x)) mono_2Ec_2Ebool_2ET) (forall ((A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (tyop_2Elist_2Elist A_27b))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Elist_2EEVERY_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Elist_2EEVERY_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Ebool_2Eitself A_27a)) A_27a))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool))) (let ((_let_6 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((c_2Ebool_2ETYPE__DEFINITION_2E2 _let_4) _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_6 ((app_2E2 ((s _let_5) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_5)) c_2Ebool_2ETYPE__DEFINITION_2E0)) _let_4))) _let_2))))))))))) (forall ((A_27a d)) (and (forall ((V2t1_2E0 u) (V3t2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V3t2_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2EF))) (_let_1 V2t1_2E0)) _let_2)) _let_2)))) (forall ((V0t1_2E0 u) (V1t2_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0t1_2E0))) (= (_let_1 (((c_2Ebool_2ECOND_2E3 ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool mono_2Ec_2Ebool_2ET))) _let_2) (_let_1 V1t2_2E0))) _let_2)))))) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1x_2E0 u)) (let ((_let_1 ((s A_27a) V1x_2E0))) (let ((_let_2 ((s ((tyop_2Emin_2Efun A_27a) A_27b)) V0f_2E0))) (let ((_let_3 (s A_27b))) (= (_let_3 ((c_2Ebool_2ELET_2E2 _let_2) _let_1)) (_let_3 ((app_2E2 _let_2) _let_1))))))) (forall ((A_27a d) (F0_2E0 u)) (=> (forall ((V0t Bool) (V1x_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_1 ((app_2E2 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0t))))) ((s A_27a) V1x_2E0)))) V0t)))) (forall ((V0t Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (= (and (forall ((V2x_2E0 u) (V3y_2E0 u)) (let ((_let_1 (s A_27a))) (= (_let_1 V2x_2E0) (_let_1 V3y_2E0)))) V0t) (j_mono_2Etyop_2Emin_2Ebool (_let_1 (c_2Ebool_2E_3F_21_2E1 ((s _let_2) ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) _let_2)) F0_2E0)) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V0t))))))))))))) (forall ((V0P Bool) (V1P_27 Bool) (V2Q Bool) (V3Q_27 Bool)) (=> (and (=> V1P_27 (= V2Q V3Q_27)) (=> V2Q (= V0P V1P_27))) (= (and V1P_27 V3Q_27) (and V0P V2Q)))) (forall ((A_27a d) (V0P Bool) (V1Q Bool)) (= (exists ((V2x_2E0 u)) (=> V0P V1Q)) (=> (forall ((V3x_2E0 u)) V0P) (exists ((V4x_2E0 u)) V1Q)))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (A_27b d) (A_27d d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun (tyop_2Elist_2Elist A_27d)) ((tyop_2Esum_2Esum A_27a) A_27b)))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Einftree_2Eis__tree_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Einftree_2Eis__tree_2E0)) _let_2)))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum) (V2p mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D V0m) V1n) ((mono_2Ec_2Earithmetic_2E_3C_3D ((mono_2Ec_2Earithmetic_2E_2A V0m) V2p)) ((mono_2Ec_2Earithmetic_2E_2A V1n) V2p)))) (and (not (= mono_2Ec_2Ebool_2ET mono_2Ec_2Ebool_2EF)) (not (= mono_2Ec_2Ebool_2EF mono_2Ec_2Ebool_2ET))) (forall ((A_27a d) (V0P Bool) (V1Q Bool) (V2x_2E0 u) (V3x_27_2E0 u) (V4y_2E0 u) (V5y_27_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V5y_27_2E0))) (let ((_let_3 (_let_1 V3x_27_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (let ((_let_5 (_let_1 V4y_2E0))) (let ((_let_6 (_let_1 V2x_2E0))) (=> (and (=> V1Q (= _let_6 _let_3)) (=> (not V1Q) (= _let_5 _let_2)) (= V0P V1Q)) (= (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V0P))) _let_6) _let_5)) (_let_1 (((c_2Ebool_2ECOND_2E3 (_let_4 (i_mono_2Etyop_2Emin_2Ebool V1Q))) _let_3) _let_2))))))))))) (forall ((V0s1 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) (V1s2 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (= ((mono_2Ec_2Estring_2Estring__gt V0s1) V1s2) ((mono_2Ec_2Estring_2Estring__lt V1s2) V0s1))) (forall ((A_27a d) (V0r_2E0 u)) (let ((_let_1 ((tyop_2Epair_2Eprod A_27a) A_27a))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (s (_let_2 tyop_2Emin_2Ebool)))) (let ((_let_4 (_let_3 V0r_2E0))) (let ((_let_5 (c_2Epred__set_2EIMAGE_2E2 ((s (_let_2 _let_1)) c_2Epair_2ESWAP_2E0)))) (= (_let_3 (c_2Eset__relation_2Etc_2E1 (_let_3 (_let_5 _let_4)))) (_let_3 (_let_5 (_let_3 (c_2Eset__relation_2Etc_2E1 _let_4))))))))))) (forall ((V0 (-> Bool Bool)) (V1 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 ((mono_2Ec_2Ecombin_2Eo_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Emin_2Ebool_20mono_2Etyop_2Emin_2Ebool V0) V1))) (_let_1 ((c_2Ecombin_2Eo_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V1))))))) (forall ((A_27a d) (V0P_2E0 u) (V1a_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) ((s A_27a) V1a_2E0)))) (exists ((V2x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V2x_2E0))) (and (= _let_2 (_let_1 V1a_2E0)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0P_2E0)) _let_2))))))))) (forall ((A_27a d) (V0f_2E0 u)) (= (exists ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_3F_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)))))) (forall ((V0 (-> Bool Bool Bool))) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 ((s (_let_1 (_let_1 tyop_2Emin_2Ebool))) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) V0))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1v_2E0 u) (V2f_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (tyop_2Emin_2Efun (_let_2 (_let_2 A_27a))))) (= (= (_let_1 ((c_2Esemi__ring_2Esemi__ring__CASE_2E2 ((s (tyop_2Esemi__ring_2Esemi__ring A_27a)) V0x_2E0)) ((s (_let_2 (_let_2 (_let_3 (_let_3 A_27b))))) V2f_2E0))) (_let_1 V1v_2E0)) (exists ((V3a_2E0 u) (V4a0_2E0 u) (V5f_27_2E0 u) (V6f0_2E0 u)) (let ((_let_1 (s A_27b))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 (_let_2 A_27a)))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 V6f0_2E0))) (let ((_let_6 (_let_4 V5f_27_2E0))) (let ((_let_7 (s A_27a))) (let ((_let_8 (_let_7 V4a0_2E0))) (let ((_let_9 (_let_7 V3a_2E0))) (let ((_let_10 (tyop_2Emin_2Efun _let_3))) (let ((_let_11 (_let_10 A_27b))) (let ((_let_12 (_let_10 _let_11))) (let ((_let_13 (_let_2 _let_12))) (let ((_let_14 (s (tyop_2Esemi__ring_2Esemi__ring A_27a)))) (and (= (_let_14 V0x_2E0) (_let_14 ((((c_2Esemi__ring_2Erecordtype_2Esemi__ring_2E4 _let_9) _let_8) _let_6) _let_5))) (= (_let_1 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s _let_13) ((app_2E2 ((s (_let_2 _let_13)) V2f_2E0)) _let_9))) _let_8))) _let_6))) _let_5)) (_let_1 V1v_2E0))))))))))))))))))))))) (forall ((A_27a d) (V0_2E0 u) (V1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V1_2E0))) (let ((_let_3 (_let_1 V0_2E0))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((c_2Emin_2E_3D_2E2 _let_3) _let_2)))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (A_27d d) (F0_2E0 u)) (=> (forall ((V1m_2E0 u) (V2n_2E0 u) (V3a_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) V2n_2E0))) (let ((_let_5 ((s A_27b) V3a_2E0))) (let ((_let_6 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_7 (tyop_2Emin_2Efun A_27b))) (let ((_let_8 (_let_7 _let_6))) (let ((_let_9 ((s _let_8) V1m_2E0))) (let ((_let_10 (s _let_2))) (let ((_let_11 (_let_7 _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_10 ((app_2E2 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_8) _let_12)) F0_2E0)) _let_9))) _let_4))) _let_5)) (_let_10 ((c_2Estate__transformer_2EBIND_2E2 ((s _let_6) ((app_2E2 _let_9) _let_5))) _let_4)))))))))))))))) (forall ((V0k_2E0 u) (V1m_2E0 u) (V2n_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 ((tyop_2Epair_2Eprod A_27d) A_27a)))) (let ((_let_3 ((tyop_2Emin_2Efun A_27c) _let_2))) (let ((_let_4 ((s _let_3) V2n_2E0))) (let ((_let_5 (_let_1 ((tyop_2Epair_2Eprod A_27c) A_27a)))) (let ((_let_6 (tyop_2Emin_2Efun A_27b))) (let ((_let_7 (_let_6 _let_5))) (let ((_let_8 ((s _let_7) V1m_2E0))) (let ((_let_9 (c_2Estate__transformer_2EBIND_2E2 ((s (_let_1 ((tyop_2Epair_2Eprod A_27b) A_27a))) V0k_2E0)))) (let ((_let_10 (s _let_2))) (let ((_let_11 (_let_6 _let_2))) (let ((_let_12 ((tyop_2Emin_2Efun _let_3) _let_11))) (= (_let_10 (_let_9 ((s _let_11) ((app_2E2 ((s _let_12) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_7) _let_12)) F0_2E0)) _let_8))) _let_4)))) (_let_10 ((c_2Estate__transformer_2EBIND_2E2 ((s _let_5) (_let_9 _let_8))) _let_4)))))))))))))))))) (forall ((A_27a d) (F0_2E0 u)) (let ((_let_1 (s (tyop_2Eoption_2Eoption A_27a)))) (=> (forall ((V0x_2E0 u)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0)) ((s A_27a) V0x_2E0)))) mono_2Ec_2Ebool_2EF)) (= (_let_1 (c_2Eoption_2Esome_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) F0_2E0))) (_let_1 c_2Eoption_2ENONE_2E0))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (V0 V1))) (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) (_let_1 (i_mono_2Etyop_2Emin_2Ebool V1))))))) (forall ((A_27a d) (A_27b d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27b) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X1_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_4 ((s _let_3) X0_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27b)) tyop_2Emin_2Ebool))) (let ((_let_6 ((tyop_2Emin_2Efun _let_1) _let_5))) (let ((_let_7 (s _let_5))) (= (_let_7 ((c_2EEncode_2Elift__prod_2E2 _let_4) _let_2)) (_let_7 ((app_2E2 ((s _let_6) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_3) _let_6)) c_2EEncode_2Elift__prod_2E0)) _let_4))) _let_2))))))))))) (forall ((V0f (-> mono_2Etyop_2Enum_2Enum mono_2Etyop_2Enum_2Enum))) (=> (mono_2Ec_2Ebool_2EONE__ONE_2Emono_2Etyop_2Enum_2Enum_20mono_2Etyop_2Enum_2Enum V0f) (forall ((V1b mono_2Etyop_2Enum_2Enum)) (exists ((V2a mono_2Etyop_2Enum_2Enum)) (forall ((V3x mono_2Etyop_2Enum_2Enum)) (=> ((mono_2Ec_2Earithmetic_2E_3C_3D (V0f V3x)) V1b) ((mono_2Ec_2Earithmetic_2E_3C_3D V3x) V2a))))))) (forall ((V0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (s (_let_1 (_let_1 tyop_2Emin_2Ebool))))) (let ((_let_3 (_let_2 V0_2E0))) (= (_let_2 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 _let_3))) _let_3))))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Epair_2Eprod tyop_2Enum_2Enum) tyop_2Enum_2Enum)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 (j_mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29 _let_2))) _let_2)))) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Emin_2Efun _let_1))) (let ((_let_3 (_let_2 tyop_2Emin_2Ebool))) (let ((_let_4 (s _let_3))) (let ((_let_5 (_let_4 X1_2E0))) (let ((_let_6 (_let_2 _let_1))) (let ((_let_7 ((s _let_6) X0_2E0))) (let ((_let_8 ((tyop_2Emin_2Efun _let_3) _let_3))) (= (_let_4 ((c_2Epred__set_2EIMAGE_2E2 _let_7) _let_5)) (_let_4 ((app_2E2 ((s _let_8) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_8)) c_2Epred__set_2EIMAGE_2E0)) _let_7))) _let_5)))))))))))) (forall ((A_27a d) (A_27b d) (V0x_2E0 u) (V1y_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (let ((_let_3 ((tyop_2Emin_2Efun A_27b) A_27a))) (= (_let_1 ((app_2E2 ((s _let_3) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) _let_3)) combin_k_2E0)) _let_2))) ((s A_27b) V1y_2E0))) _let_2))))) (forall ((V0 (-> (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29)) (V1 (-> (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29) mono_2Etyop_2Epair_2Eprod_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Eoption_2Eoption_28tyop_2Enum_2Enum_29_29_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29))) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_3F_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_3F_2E0)) _let_2)))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (j_mono_2Etyop_2Emin_2Ebool _let_2))) _let_2)))) (forall ((A_27a d) (V0n mono_2Etyop_2Enum_2Enum) (V1l_2E0 u)) (let ((_let_1 (s (tyop_2Elist_2Elist A_27a)))) (let ((_let_2 (_let_1 V1l_2E0))) (let ((_let_3 (s tyop_2Enum_2Enum))) (let ((_let_4 (j_mono_2Etyop_2Enum_2Enum (_let_3 (c_2Elist_2ELENGTH_2E1 _let_2))))) (let ((_let_5 (s A_27a))) (=> ((mono_2Ec_2Eprim__rec_2E_3C V0n) _let_4) (= (_let_5 ((c_2Erich__list_2EELL_2E2 (_let_3 (i_mono_2Etyop_2Enum_2Enum V0n))) _let_2)) (_let_5 (c_2Elist_2EHD_2E1 (_let_1 (((c_2Erich__list_2ESEG_2E3 (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Earithmetic_2ENUMERAL (mono_2Ec_2Earithmetic_2EBIT1 mono_2Ec_2Earithmetic_2EZERO))))) (_let_3 (i_mono_2Etyop_2Enum_2Enum (mono_2Ec_2Eprim__rec_2EPRE ((mono_2Ec_2Earithmetic_2E_2D _let_4) V0n))))) _let_2)))))))))))) (forall ((V0m mono_2Etyop_2Enum_2Enum) (V1n mono_2Etyop_2Enum_2Enum)) (= ((mono_2Ec_2Earithmetic_2E_2A V0m) V1n) ((mono_2Ec_2Earithmetic_2E_2A V1n) V0m))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_5C_2F V0) V1) (or V1 V0))) (forall ((A_27a d) (V0s_2E0 u) (V1r_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun ((tyop_2Epair_2Eprod A_27a) A_27a)) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V1r_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (=> (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Eset__relation_2Etransitive_2E1 (_let_1 ((c_2Eset__relation_2Errestrict_2E2 _let_2) ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0s_2E0))))))))))) (forall ((A_27a d) (A_27b d) (A_27c d) (V0f_2E0 u) (V1g_2E0 u) (V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (tyop_2Emin_2Efun A_27a))) (let ((_let_3 (_let_2 A_27b))) (let ((_let_4 ((s _let_3) V1g_2E0))) (let ((_let_5 ((tyop_2Emin_2Efun A_27b) A_27c))) (let ((_let_6 (_let_2 _let_5))) (let ((_let_7 ((s _let_6) V0f_2E0))) (let ((_let_8 (s A_27c))) (let ((_let_9 (_let_2 A_27c))) (let ((_let_10 ((tyop_2Emin_2Efun _let_3) _let_9))) (= (_let_8 ((app_2E2 ((s _let_9) ((app_2E2 ((s _let_10) ((app_2E2 ((s ((tyop_2Emin_2Efun _let_6) _let_10)) combin_s_2E0)) _let_7))) _let_4))) _let_1)) (_let_8 ((app_2E2 ((s _let_5) ((app_2E2 _let_7) _let_1))) ((s A_27b) ((app_2E2 _let_4) _let_1)))))))))))))))) (forall ((V0 (-> Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> (-> mono_2Etyop_2Estring_2Echar Bool) mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Estring_2Echar_29 mono_2Etyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29)) (V1 (-> mono_2Etyop_2Estring_2Echar Bool))) (let ((_let_1 ((tyop_2Emin_2Efun tyop_2Estring_2Echar) tyop_2Emin_2Ebool))) (let ((_let_2 (tyop_2Elist_2Elist tyop_2Estring_2Echar))) (let ((_let_3 (tyop_2Emin_2Efun _let_2))) (let ((_let_4 (_let_3 (_let_3 (tyop_2Elist_2Elist _let_2))))) (let ((_let_5 (s _let_4))) (= (_let_5 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29 (V0 V1))) (_let_5 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_4)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Emin_2Efun_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_2Ctyop_2Elist_2Elist_28tyop_2Elist_2Elist_28tyop_2Estring_2Echar_29_29_29_29_29 V0))) ((s _let_1) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Estring_2Echar_2Ctyop_2Emin_2Ebool_29 V1))))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Esum_2Esum A_27a) tyop_2Eone_2Eone))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (tyop_2Eoption_2Eoption A_27a))) (let ((_let_4 (s _let_3))) (= (_let_4 (c_2Eoption_2Eoption__ABS_2E1 _let_2)) (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) _let_3)) c_2Eoption_2Eoption__ABS_2E0)) _let_2)))))))) (forall ((A_27a d) (V0x_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 V0x_2E0))) (= (_let_1 ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) A_27a)) combin_i_2E0)) _let_2)) _let_2)))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 (tyop_2Emin_2Efun A_27a))) (let ((_let_2 (_let_1 (_let_1 tyop_2Emin_2Ebool)))) (let ((_let_3 ((s _let_2) X0_2E0))) (let ((_let_4 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_4 (c_2Erelation_2Eirreflexive_2E1 _let_3))) (j_mono_2Etyop_2Emin_2Ebool (_let_4 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_2) tyop_2Emin_2Ebool)) c_2Erelation_2Eirreflexive_2E0)) _let_3))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((V0 (-> Bool Bool))) (= (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 ((s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 V0))) V0)) (forall ((A_27a d) (X0_2E0 u) (X1_2E0 u)) (let ((_let_1 (s A_27a))) (let ((_let_2 (_let_1 X1_2E0))) (let ((_let_3 (_let_1 X0_2E0))) (let ((_let_4 (tyop_2Emin_2Efun A_27a))) (let ((_let_5 (_let_4 tyop_2Emin_2Ebool))) (= (= _let_3 _let_2) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s _let_5) ((app_2E2 ((s (_let_4 _let_5)) c_2Emin_2E_3D_2E0)) _let_3))) _let_2)))))))))) (forall ((V0 Bool) (V1 Bool)) (= (=> V0 V1) ((mono_2Ec_2Emin_2E_3D_3D_3E V0) V1))) (forall ((V0 (-> Bool Bool Bool)) (V1 Bool)) (let ((_let_1 (tyop_2Emin_2Efun tyop_2Emin_2Ebool))) (let ((_let_2 (_let_1 tyop_2Emin_2Ebool))) (let ((_let_3 (s _let_2))) (= (_let_3 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (V0 V1))) (_let_3 ((app_2E2 ((s (_let_1 _let_2)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29_29 V0))) ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V1))))))))) (forall ((V0_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun tyop_2Emin_2Ebool) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 V0_2E0))) (= (_let_1 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 (j_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Ebool_2Ctyop_2Emin_2Ebool_29 _let_2))) _let_2)))) (forall ((A_27a d) (V0x_2E0 u) (V1s_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)))) (let ((_let_2 (_let_1 c_2Epred__set_2EEMPTY_2E0))) (let ((_let_3 (c_2Epred__set_2EINSERT_2E2 ((s A_27a) V0x_2E0)))) (let ((_let_4 (_let_1 V1s_2E0))) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Epred__set_2ESING_2E1 (_let_1 (_let_3 _let_4))))) (or (= _let_4 _let_2) (= _let_4 (_let_1 (_let_3 _let_2)))))))))) (forall ((A_27a d) (X0_2E0 u)) (let ((_let_1 ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool))) (let ((_let_2 ((s _let_1) X0_2E0))) (let ((_let_3 (s tyop_2Emin_2Ebool))) (= (j_mono_2Etyop_2Emin_2Ebool (_let_3 (c_2Ebool_2E_21_2E1 _let_2))) (j_mono_2Etyop_2Emin_2Ebool (_let_3 ((app_2E2 ((s ((tyop_2Emin_2Efun _let_1) tyop_2Emin_2Ebool)) c_2Ebool_2E_21_2E0)) _let_2)))))))) (forall ((V0 Bool) (V1 Bool)) (= ((mono_2Ec_2Ebool_2E_2F_5C V0) V1) (and V0 V1))) (forall ((V0 (-> mono_2Etyop_2Enum_2Enum Bool))) (let ((_let_1 (s tyop_2Emin_2Ebool))) (= (_let_1 (i_mono_2Etyop_2Emin_2Ebool (mono_2Ec_2EEncode_2Ewf__pred_2Emono_2Etyop_2Enum_2Enum V0))) (_let_1 (c_2EEncode_2Ewf__pred_2E1 ((s ((tyop_2Emin_2Efun tyop_2Enum_2Enum) tyop_2Emin_2Ebool)) (i_mono_2Etyop_2Emin_2Efun_28tyop_2Enum_2Enum_2Ctyop_2Emin_2Ebool_29 V0))))))) (= (_let_9 (i_mono_2Etyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Ebool_29_29_2Ctyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_2Ctyop_2Emin_2Efun_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_29_29 mono_2Ec_2Erelation_2EWFREC_2Emono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29_29_20mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Enum_2Enum_29)) (_let_9 c_2Erelation_2EWFREC_2E0)) (forall ((V0 Bool)) (= (not V0) (mono_2Ec_2Ebool_2E_7E V0))) (forall ((V0 Bool)) (= (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (i_mono_2Etyop_2Emin_2Ebool V0))) V0)) (forall ((A_27a d) (A_27b d) (V0f_2E0 u) (V1g_2E0 u)) (let ((_let_1 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (=> (forall ((V2x_2E0 u)) (let ((_let_1 ((s A_27a) V2x_2E0))) (let ((_let_2 (s ((tyop_2Emin_2Efun A_27a) A_27b)))) (let ((_let_3 (s A_27b))) (= (_let_3 ((app_2E2 (_let_2 V0f_2E0)) _let_1)) (_let_3 ((app_2E2 (_let_2 V1g_2E0)) _let_1))))))) (= (_let_1 V0f_2E0) (_let_1 V1g_2E0))))) (forall ((V0 (-> mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29 (-> mono_2Etyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29) mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (V1 mono_2Etyop_2Eoption_2Eoption_28tyop_2Epair_2Eprod_28tyop_2Enum_2Enum_2Ctyop_2Elist_2Elist_28tyop_2Emin_2Ebool_29_29_29)) (let ((_let_1 (V0 V1))) (= _let_1 _let_1))) (forall ((A_27a d) (V0f_2E0 u)) (= (forall ((V1x_2E0 u)) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) ((app_2E2 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0)) ((s A_27a) V1x_2E0))))) (j_mono_2Etyop_2Emin_2Ebool ((s tyop_2Emin_2Ebool) (c_2Ebool_2E_21_2E1 ((s ((tyop_2Emin_2Efun A_27a) tyop_2Emin_2Ebool)) V0f_2E0))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.59/14.81 ) 14.59/14.81 % SZS output end Proof for theBenchmark 14.61/14.83 EOF